Skip to content

Latest commit

 

History

History
97 lines (82 loc) · 5.91 KB

changelog.md

File metadata and controls

97 lines (82 loc) · 5.91 KB

HawtDB

HawtDB 1.6, released 2011-08-27

  • Minor change to LFUCache for less memory usage.
  • Added volatiles to linked node, list and sequence.
  • Added NoOpPageCache.
  • Squeezed out some more performance improvements from LFUCache by avoiding to recreate frequency list nodes.
  • Removed journal apis (moved to the HawtJournal project).
  • Refactored page/read cache implementation to allow for cache pluggability.
  • Optimized put by avoiding reallocating nodes on replace.
  • Added clear method + other minor improvements.
  • Fixed bugs in LFUCache, added remove operation, and managed maxFrequency overflow with a linked set based repositioning.
  • LFU cache with O(1) complexity.
  • Updated main documentation page.
  • Improved multi-index apis by avoiding passing the paged object multiple times.
  • Implemented multi-index api.
  • Implemented openOrCreate api.
  • Fixed GrowIssueTest.
  • Improved HashIndex tests and added concurrency tests.
  • Fixed HashIndex bug: HashIndex.Buckets now doesn't hold a reference to the index anymore, so that they can be (page)-cached safely.
  • Ignored GrowIssueTest (should it fail or succeed?).
  • Added volatile keyword to all shared instance attributes which are read in different threads.
  • Fixed HawtTransaction rollback: now correctly freeing local pages rather than parent (possibly updated in other transactions) pages.
  • Re-added buckets' pages deallocation.
  • Fixed sync batch bug: batch performing was apparently placed in wrong order.
  • Minor fix to HashIndex paged accessor exception handling.
  • Fixed HashIndex bugs affecting header read/write operations and capacity resize.
  • PageFiles store their free page list by default. They can also be opened in a read only mode.
  • upgrade hawtbuf version.
  • Osgi metadata cleanup.
  • cleaning up how page file gets closed

HawtDB 1.5, released 2010-10-21

HawtDB 1.4, released 2010-09-14

  • Upgrade to HawtBuf 1.2

HawtDB 1.3, released 2010-09-07

  • Fixing bug in btree index delete logic.
  • Java 1.5 Compat.

HawtDB 1.2, released 2010-07-18

  • added a putIfAbsent index operation
  • Using a default page size of 512
  • Upgrade to hawtbuf 1.1, allows us to test if the codec can estimate serialized size of key/values. if it can't deferred encoding/decoding is disabled.
  • Index getPage method renamed to getIndexLocation
  • Improved IndexFactory APIs: create and open methods default to using the root page.
  • added a setFreeRanges and getFreeRanges to the allocator interface.
  • Updated the predicates and vistor interfaces so that they are passed the Comparator configured on the index. see #6 Documented custom comparators and also index iteration
  • Fixes #6 Allow configuring a custom comparators on BTree indexes

HawtDB 1.1, released 2010-07-01

  • Fixing BTree node next linking.. It was possible that a next link would not properly get set in some conditions during a node removal.
  • You can add get callbacks when a commit gets flushed to disk.
  • Changed the way the journal was handling callback based write completed notifications. They are now delivered in batch form to a single JournalListener. This reduces thread contention and increases throughput.
  • Moved the built in predicate implementations into a Predicates class.
  • Added close method to the Transaction interface. Implementation now asserts it is no longer used after a close.
  • Making the appender's max write batch size configurable.
  • Revamped how Update and DefferedUpdates track shadow pages. A little easier to follow now. - changed the interface to PagedAccessor so that instead of removing the linked pages, it just needs to report what the linked pages are.
  • Got rid of the WriteKey wrapper class, updated logging.
  • Better looking printStrucuture BTree method
  • Added a few Logging classes to reduce the number of places we need to update if in case we decided to switch logging APIs.
  • Fixing free page allocation bug when using deferred updates.
  • Javadoc improvements
  • Expose a config property to control the read cache size.
  • Reworked how snapshot tracking was being done. Fixes errors that occurred during heavy concurrent access.
  • Added a non-blocking flush method to the TxPageFile
  • Read cache was not getting updated when a update batch was performed. Cached entries that were updated and flushed to disk continued returning stale data.
  • Fixed an recovery edge cases
  • Don't start the thread from the thread factory. that causes illegal state exceptions
  • Fixed journal bug where getting next location could return a the current location
  • Renamed EncoderDecoder to PagedAccessor
  • The util.buffer package has moved into it's own project at http://github.com/chirino/hawtbuf
  • Fixes #4 : Errors occur when you re-open an empty data file.
  • Extracted a SortedIndex interface from the Index interface to non sorted indexes having to deal with that leaky abstraction.
  • added a free() method to the Paged for symmetry with the alloc() method.
  • Improved website documentation

HawtDB 1.0, released 2010-04-12

  • Initial release