Parent Directory | Revision Log
|Links to HEAD:||(view) (annotate)|
Don't assume that non-simple strings always have fill-pointers when serializing. Thanks to email@example.com.
* 2009-05-27 - version 0.1.20 Fix a bug in the creation of transaction-ids (bug reported by Klaus Harbo).
Fix a bug in RUCKSACK-DO-SLOT: it didn't work correctly when the EQUAL argument wasn't supplied.
Version 0.1.17: add some list functions and replace persistent lists by persistent btrees for non-unique slot indexes.
Version 0.1.16: improved performance by decreasing persistent consing for btrees and using a lazy-cache. Fixed some small bugs. Added a few handy functions and macros. In detail: Added P-PUSH and P-POP. Improved btree efficiency by switching to a different data structure for the bindings. Instead of using a persistent cons for each key/ value pair, we now put the keys and values directly into the bnode vector. This speeds up most btree operations because it reduces persistent consing when adding new values and it reduces indirections when searching for keys. Renamed BTREE-NODE to BNODE, BTREE-NODE-INDEX to BNODE-BINDINGS, BTREE-NODE-INDEX-COUNT to BNODE-NR-BINDINGS, FIND-BINDING-IN-NODE to FIND-KEY-IN-NODE. Fix a missing argument bug in REMOVE-CLASS-INDEX. Added a LAZY-CACHE which just clears the entire hash table whenever the cache gets full. This improves memory usage, because the normal cache queue kept track of a lot of objects that for some reason couldn't be cleaned up by the implementation's garbage collector. Added the convenience macros RUCKSACK-DO-CLASS and RUCKSACK-DO-SLOT. Made RUCKSACK-DELETE-OBJECT an exported symbol of the RUCKSACK package. Fix a bug in TEST-NON-UNIQUE-BTREE: it should call CHECK-NON-UNIQUE-CONTENTS instead of CHECK-CONTENTS.
Version 0.1.15. Fixed a garbage collector bug reported by Sean Ross. When the garbage collector deletes object ids from the object table (because the objects are dead and we may want to reuse their ids later for other objects), it should also remove that object from the cache. If it doesn't, there's a possibility that the object id will be reused later for a new object and the cache wil still refer to the old in-memory object.
Version 0.1.14. Class and slot indexes now map directly to objects instead of object-ids. This fixes a bug where the garbage collector forgot to add all indexed objects to the root set. (Suggested by Sean Ross.) Increased default cache size to 100,000 objects.
Version 0.1.13: Add Brad Beveridge's basic unit test suite (modified to work with lisp-unit instead of 5am). Add Chris Riesbeck's lisp-unit library to help with creating unit test suites.
Version 0.1.12. Use (ARRAY-DIMENSION buffer 0) instead of LENGTH in LOAD-BUFFER, because we want to ignore the fill pointer here. Thanks to Sean Ross.
- Fix bug caused by LEAF-DELETE-KEY. Reported and fixed by Brad Beveridge. - Fix some typos (:VALUE should be :VALUE=) in index.lisp. - Version 0.1.11.
When deleting a key from a btree, use the BTREE-KEY= function (not P-EQL) to determine the position of the key. Reported and fixed by Leonid Novikov.
Fix btree bug during btree-delete: if we're deleting the biggest key from a leaf, we should update the parents so they'll use the key that has now become the biggest. (Henrik Hjelte.) Try to signal an error when an incompatible value is given to indexed slots, e.g. trying to put a string into a slot with a :symbol-index. (Henrik Hjelte) Signal an error during when putting duplicate values into a slot for which duplicate values are not allowed. (Henrik Hjelte) Use BTREE-VALUE-TYPE, not BTREE-KEY-TYPE, when type checking a value during BTREE-INSERT. (Henrik Hjelte) Wrap COMPILE-FILE calls in a WITH-COMPILATION-UNIT to prevent superfluous warnings about undefined functions.
Fix a bug in LEAF-DELETE-KEY (thanks to Henrik Hjelte). Add RUCKSACK-DELETE-OBJECT, RUCKSACK-DELETE-OBJECTS and RUCKSACK-ROOT-P (suggested by Henrik Hjelte). I haven't tested these functions yet.
Version 0.1.7 - Get rid of two SBCL compiler warnings. (Reported by Cyrus Harmon.)
Version 0.1.6 - Added serializing/deserializing of structures. Only works on SBCL. (Thanks to Levente Mészáros.)
Version 0.1.5: removed ^M line terminators from all source files (thanks to Attila Lendvai).
rucksack 0.1.4 * add new parameter *collect-garbage-on-commit* * add (:inhibit-gc nil) keyword arg to with-transaction * add without-rucksack-gcing macro * only collect garbage on transaction-commit when *collect-garbage-on-commit* is not nil
rucksack 0.1.3 * use binary search instead of linear search in find-subnode and find-binding-in-node
rucksack 0.1.2 * btree-max-node-size now defaults to 32 instead of 100
rucksack 0.1.1 * propogate unique fropm the direct slot-definition(s) to the effective slot definition
Keep ASDF file in sync with make file.
Added ASDF system file (from Edi Weitz).
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.
|Powered by ViewVC 1.1.5|