← Back to team overview

pbxt-discuss team mailing list archive

Re: goal 0 of embedde pbxt reached || (was: Re: PBXT: Embedded Database (library))

 

Hi Martin,

Excellent! I will check it out. You may noticed that I am following your progress on LP now.

You seem to be an experienced developer. What have worked on previously?

I guess the next step would be to defined an interface, and begin the implementation.

This raises the question of whether to use the MySQL handler interface, or to go in and replace ha_pbxt.cc altogether.

If you use the handler interface, then you will have to continue to simulate MySQL, which may not suite the API (you will have to call the handler functions in the same order that MySQL does).

If you replace ha_pbxt, then you will have to nevertheless include some of the functionality in this code. For example, you should take over the init and shutdown code.

What you need to keep is the "cursor" type paradigm.

What I mean is, to do and index or table scan you do the following:

- open a cursor for a table
  * which means grap an XTOpenTable from the table pool
- call init
  * Initialize the scan.
- Call search and next in a loop.
- call exit
  * Free resources
- close the cursor
  * which means return the open table to the pool

All such actions need to be enclosed in a:

- begin transaction
...
- commit/rollback transaction

The transaction is per thread, and all relevant information is stored in the XTThread structure.

Let me know if you have any questions and we can plan this together.

Best regards,

Paul

P.S. I have cc'ed to the PBXT list, to get feedback from anyone else who is interested in the project! :)

On Feb 11, 2010, at 3:53 PM, Martin Scholl wrote:

Hello Paul,


just like to inform you my first babystep was done; libembpbxt.la can be
build without mysql's sources:
	lp:embedded-pbxt/abstract-frm
by invoking
	make -j2 -C src libembpbxt.la && make -j2 -C bin lackmus
.
Lackmus is link-time test against libembpbxt.so.

Still the "semantic part" of the port is outstanding. Currently the
stuff only compiles and links.
The changes to pbxt's codebase are minimal so far (afair). Most of the
changes are only preprocessor-relevant.


[snip]

So long,
Martin





--
Paul McCullagh
PrimeBase Technologies
www.primebase.org
www.blobstreaming.org
pbxt.blogspot.com






Follow ups