Mar 06, 2007 - chris --------------------------------------------------- release of hamsterdb-0.4.1 Mar 04, 2007 o moved the ./tests-subdirectory to a separate repository Mar 03, 2007 o win32 compiles and links as a static or dynamic library with Visual C++ 2005 Express Edition; testes are all successful Feb 11, 2007 o many small changes to compile everything on cygwin Feb 04, 2007 - chris --------------------------------------------------- release of hamsterdb-0.4.0 Feb 03, 2007 - chris o all write-functions return an error if they're called but the database is in read-only mode o added a new sample db3.c, which reads words from stdin and prints them in sorted order o removed the flag HAM_OPEN_CREATE; it was broken anyway Feb 02, 2007 - chris o database cursors are now fully implemented and tested Jan 24, 2007 - chris o default behaviour for ham_create changed; already existing files are now overwritten o now uses -Wall on platforms with gcc o resized the default cache size from 128kb to 256kb Jan 23, 2007 - chris o added a new sample db2.c, which copies an existing database to another database using a cursor. Jan 21, 2007 - chris o the cursor implementation is finished and seems to work; testing is not yet complete. o ham_flush now has an (unused) flags-parameter. o renamed samples/simple.c to samples/db1.c Jan 20, 2007 - chris o created one global transaction-pointer in the database object, and removed all transaction parameters for most functions; added tests that only one single transaction object is created. Dec 23, 2006 - chris --------------------------------------------------- release of hamsterdb-0.3.1 Dec 23, 2006 - chris o header-files are now installed to $prefix/include/ham o test is not build if db.h is missing Dec 19, 2006 - chris --------------------------------------------------- release of hamsterdb-0.3 Dec 15, 2006 - chris o started the port to MS Windows; so far, there are only two batch files to create the library, but no nmake file or Visual Studio project. o started to move the stuff to automake/autoconf; transition is not yet complete Dec 10, 2006 - chris o a new parameter HAM_OPTIMIZE_SIZE creates smaller files by merging freelist entries (comes at a small performance penalty) Nov 26, 2006 - chris o extended keys are now cached (if the cache size is big enough) Nov 24, 2006 - chris o added HAM_DISABLE_FREELIST_FLUSH - when a freelist page is modified, it is no longer flushed immediately. this is dangerous - in case of a crash, the database is most likely broken. Nov 23, 2006 - chris o fixed a small leak - if records are overwritten, and the new record size is smaller then sizeof(ham_offset_t), the old blob was not added to the freelist Nov 22, 2006 - chris o completely rewrote the freelist - elements are now sorted, and access is a lot faster. also, elements are merged, if possible, which results in smaller files o fixed a bug; if the root page is split, the address of the root page was not stored correctly in the database header Nov 12, 2006 - chris o completely rewrote the blob storage - blobs are now stored in one big chunk, and not splitted into pages o replaced read/write with pread/pwrite o fixed a small bug related to a performance improvement on Nov 5th (removed too many memset's...) Nov 09, 2006 - chris o fetching in-memory-blobs created a memory leak if the record data was allocated by the user Nov 07, 2006 - chris o blobs which were overwritten (and therefore were deleted) were not added to the freelist Nov 05, 2006 - chris o fixed a tiny memory leak in blob_erase o replaced linear search in btree_get_slot and btree_insert with binary search, got significant performance improvements o removed some unnecessary memsets, after allocating a new page o relaxed the "minkey"-rule: after erasing, pages are now merged when there are <=4 elements in the page Nov 04, 2006 - chris --------------------------------------------------- release of hamsterdb-0.1pre2 Oct 26, 2006 - chris o fixed a bug in the freelist - the return value was ignored, when allocating a new page. if the cache was too small, NULL was returned and the library crashed Oct 24, 2006 - chris o fixed minor issues for compiling on 32bit machines Oct 18, 2006 - chris o fixed a bug in the freelist - too many freelist pages were allocated o fixed a bug: when allocating pages, and the page was removed from the freelist, and the page type was not set correctly Oct 12, 2006 - chris o fixed a bug in blob_allocate when allocating big blobs o fixed a bug when overwriting keys, and the blob was empty, tiny or small (<=sizeof(ham_offset_t)) Oct 8, 2006 - chris o completely rewrote the test environment (./dbtest.py) Oct 3, 2006 - chris o rewrote the SConscript and all scons-files o added the Doxyfile (Doxygen build script) to generate the documentation Sep 22, 2006 - chris o added the README-file o enabled support for O_LARGEFILE Sep 21, 2006 - chris o renamed COPYING to LICENSE; also renamed the header comments in all files