[Announce] libzdb 2.6

Jan-Henrik Haukeland hauk at tildeslash.com
Fri Jul 3 16:25:39 CEST 2009


Version 2.6 of Zild Database Library is available:

Download: 	http://www.tildeslash.com/libzdb/dist/libzdb-2.6.tar.gz
MD5 checksum:  	54eef941f130768d2d0a311873550e25  libzdb-2.6.tar.gz
Change log:    	http://www.tildeslash.com/libzdb/dist/CHANGES.txt

This is a feature and bug fix release which has been tested on the
following platforms:

     * Linux 2.6 (x86 and x64)
     * Mac OS X Leopard (Darwin 10.5.x x86/ppc)
     * FreeBSD 6.x and 7.x (x86 and x64)
     * Solaris 10 and Solaris Express (sparc/x86)
     * OpenBSD 4.x (x64)


Release notes:
--------------

1) This release greatly improves upon SQLite concurrency. We have  
tested libzdb with SQLite using up to 300 concurrent threads without  
experiencing lock problems. To achieve this, we use the experimental  
SQLite unlock notification API. To enable this API you need to first  
build and configure SQLite (version > 3.6.12) with the  
SQLITE_ENABLE_UNLOCK_NOTIFY preprocessor symbol like so:

CFLAGS="$CFLAGS -DSQLITE_ENABLE_UNLOCK_NOTIFY" ./configure ...

Then you need to enable this API in libzdb using the --enable- 
sqliteunlock configure switch when configuring and building libzdb.

2) For those using libzdb with the excellent DBMail (http://www.dbmail.org/ 
) project it is strongly recommended to upgrade. This version of  
libzdb is tested by the DBMail project and should work with the latest  
DBMail release.


Changes in this release:
------------------------

* Internal optimizing changes and improvements

* Enable shared cache mode for SQLite >= 3.5

* Added new configure option --enable-sqliteunlock which
   enables SQLite unlock notification. This feature requires
   SQLite >= 3.6.12 compiled with the SQLITE_ENABLE_UNLOCK_NOTIFY
   C-preprocessor symbol. This option greately improves upon
   SQLite concurrency when libzdb and SQLite is used from a
   multi-threaded program.

* Removed deprecated ResultSet_readData() from API

Bug fixes:

* PostgreSQL: Unescape values retrieved via ResultSet_getBlob()
   and via ResultSet_getBlobByName(). By an incurie, unescape was
   left out of libzdb version 2.5.



More information about the libzdb-general mailing list