hamsterdb Changelog

New in version 2.1.8

October 14th, 2014
  • New Features:
  • Adding the new "hola" API - hamsterdb analytical functions for COUNT, SUM, AVERAGE etc. See ham/hamsterdb_ola.h for the declarations
  • Added new API ham_cursor_get_duplicate_position
  • A new Python API was added
  • Bugfixes:
  • issue #33: upgraded to libuv 0.11.22
  • Fixing a performance regression in 2.1.7 - large fixed-length keys created too many page splits, even if they were stored as extended keys
  • Other Changes:
  • The database format no longer tries to be endian agnostic; the database is now stored in host endian format. The endian agnostic code was broken anyway, and I had no hardware to test it.
  • ham_db_get_error is now deprecated
  • header files no longer include winsock.h to avoid conflicts with winsock2.h on Windows platforms
  • Both btree layouts have been completely rewritten; PAX KeyLists can now be used in combination with duplicate RecordLists, and variable length KeyLists can now be used in combination with PAX RecordLists
  • Avoiding Btree splits if keys are appended (HAM_HINT_APPEND)
  • The internal communication with the remote server now uses a different protocol which is faster than google's protobuffer
  • PAX layout now uses linear search for small ranges; this improves search performance by 5-10%
  • Removed the ham_get_license API (and serial.h)

New in version 2.1.5 (February 14th, 2014)

  • This release fixes several bugs and improves performance. Also, hamsterdb now scales much better if the file size grows beyond several gigabytes.

New in version 2.1.4 (January 10th, 2014)

  • This release adds custom Btree layouts for variable length keys and duplicate keys. Also, small records are now stored directly in the Btree leaf node, instead of an external blob.

New in version 2.0.5 (December 3rd, 2012)

  • This version fixes a few minor bugs, has a few performance improvements, and fixes a segmentation fault in the .NET API.
  • The internal C++ implementation has been moved into namespace “ham” to avoid conflicts with other symbols.
  • Please check the README for upcoming API changes in the next release.

New in version 2.0.3 (June 26th, 2012)

  • This version fixes several bugs and adds support for Microsoft's Visual Studio 2010.
  • The legacy file format of hamsterdb 1.0.9 and older is no longer supported.
  • Sources and precompiled libraries for Win32 (x86 and x64) are available for download.

New in version 2.0.2 (April 28th, 2012)

  • This version makes hamsterdb thread-safe.
  • A bug in the freelist was fixed.
  • Boost is now required.
  • Sources and pre-compiled win32/win64 libraries are available for download.

New in version 2.0.1 (February 20th, 2012)

  • This version adds a few minor features like setting a custom path for log files and re-enabling approximate matching for use with Transactions.
  • A few bugs were fixed as well.
  • Sources and precompiled Win32/Win64 libraries are available for download.

New in version 2.0.0 (January 23rd, 2012)

  • It features a complete re-implementation of the Transaction support, now allowing an unlimited number of Transactions in parallel.
  • It integrates the Java and .NET APIs.
  • Sources, documentation, and prebuilt libraries for Win32 (including .NET and Java) are available on the (redesigned) webpage.

New in version 2.0.0 RC3 (November 30th, 2011)

  • This version further stabilizes the 2.x branch and fixes all known issues from the previous rc2 release.
  • Performance was improved in many areas.
  • Sources and precompiled Win32 libraries are available for download on the Web page.