Release Notes: This release fixes a bug in the cache that caused the cache to grow and exceed the cache limits. A few other minor bugs were fixed, and the recovery process was improved: changes in the header page (i.e. when adding new Databases or when changing the address of a root page) were not correctly logged. The flag HAM_WRITE_THROUGH will now flush all file handles after a transaction was committed or aborted. This has a performance impact, but improves the durability of the transactions. Sources, changelog, and precompiled Win32 libraries are available for download.
Release Notes: This release fixes a bug in the Transaction handling, and an out-of-memory condition with long-running Transactions. It fixes several other issues detected by static code analysis tools. A .spec file was added for RPM generation. A 64-bit incompatibility was fixed in the remote functions/hamserver. Sources and precompiled Win32 libraries are available for download.
Release Notes: This release fixes a potential endless loop in the Transaction code. It also fixes a bug when using HAM_DIRECT_ACCESS with records 8 bytes long or smaller, cursors and duplicates (this bug was partially fixed in 1.1.7). The ./configure script no longer overwrites -Ox flags from the user.
Release Notes: This release has some significant performance improvements. It also fixes a small memory leak in the remote Transaction handling. A bug when using HAM_DIRECT_ACCESS in combination with records which are <= 8 bytes large was fixed.
Release Notes: This release stabilized the remote functionality. New samples for client/server scenarios are provided. The remote server can now write access logfiles. A Unix daemon and a Win32 service were added. The dependency on Google Protocol Buffers for C was removed; instead, Google Protocol Buffers (C++) are now used. Compilation on ArchLinux (gcc 4.5.1) was fixed. Several functions are now deprecated. The source repository was moved to github. Sources, CHANGELOG, and precompiled Win32 libraries are available for download.
Release Notes: This release implements remote functionality over HTTP. The server can be embedded into an application. There are no known bugs, but currently the remote functionality is only supported on Unix/Linux.
Release Notes: This release fixes a few bugs and has minor performance improvements. hamsterdb only supports one Transaction at a time, but nevertheless, it was allowed to create temporary, unnamed Transactions while another one was already running. Also, on win32, if you had a cache size of more than a gigabyte and filled up the cache, the non-paged memory pool could be exhausted, and the insert operation failed. Both issues are now fixed. Sources and precompiled libraries for Win32 and Win64 are available for download.
Release Notes: This release improves performance and adds a new feature: records can now be read and written partially (with the flag HAM_PARTIAL). This feature required changes to the ham_record_t structure, therefore the ABI of hamsterdb is not backwards compatible (but the API and file format is). The libtool version was incremented, and the Win32 libraries now have the version encoded in the filename of the dynamic and static libraries. Precompiled libraries for win32/win64 are available for download.
Release Notes: Duplicate keys can now be sorted. Sorting has to be enabled with HAM_SORT_DUPLICATES. The default collation can be overridden with ham_set_duplicate_compare_func. A few bugs were fixed, including problems with gcc 4.4.1 on 64-bit systems.
Release Notes: This release fixes a few minor bugs and improves performance for In-Memory Databases: Users can now request a pointer to the stored record data by specifying the flag HAM_DIRECT_ACCES to ham_find, ham_cursor_find[_ex], and ham_cursor_move. Thus they can overwrite the record data without calling ham_insert or ham_cursor_overwrite. A few flags were removed and the interface for ham_get_key_count was slightly changed (please see the README). Precompiled binaries for Windows (32-bit and 64-bit) are available for download.