[postmodern-devel] A new elephant backend

Henrik Hjelte henrik at evahjelte.com
Fri Mar 9 17:42:44 UTC 2007


First, thanks for postmodern, it's a great library!

I just used it to make a new backend for the elephant object-store,
db-postmodern. Cross-posting from elephant-devel:

It uses postgresql for storage, and the postmodern lisp socket interface
instead of clsql. The implementation is actually quite different from
the clsql backend. 

db-postmodern uses prepared queries and stored procedures for
performance reasons. 

The db-postmodern cursor is based on a sql cursor. Each btree has its
own database table.

db-postmodern is slower than the berkeley db backend, I guess about four
or five times.

It now passes all tests and the migration test, but should of course be
regarded as an alpha. It is only tested on sbcl, but should work on all
platforms that postmodern supports.

About postmodern:
http://common-lisp.net/project/postmodern/
db-postmodern mainly uses the lower level cl-postgres driver in the
postmodern project.

During development I used a darcs mirror of elephant, and I have
temporarily put it at common-lisp.net. This darcs branch is intended for
people wanting to try db-postmodern, and it is not an automatic mirror
of the cvs elephant.

Download:

To get elephant containing db-postmodern,
darcs get http://common-lisp.net/project/grand-prix/darcs/elephant

Best wishes,
Henrik Hjelte
	




More information about the postmodern-devel mailing list