Parent Directory | Revision Log
|Links to HEAD:||(view) (annotate)|
* 2009-05-27 - version 0.1.20 Fix a bug in the creation of transaction-ids (bug reported by Klaus Harbo).
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.
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
The class and slot indexes were normal hash tables, but they should be persistent objects like everything else: I replaced them by btrees. Get PROCESS-LOCK and PROCESS-UNLOCK working on SBCL (thanks to Geoff Cant).
Do a FINISH-OUTPUT at the end of a transaction commit (suggested by Marco Baringer). Add :KEY-KEY and :VALUE-KEY initargs to btrees. Add some standard slot indexes. Add :UNIQUE initarg for persistent slots (not finished yet).
Add a SERIAL-TRANSACTION-RUCKSACK-CLASS that allows for only one transaction at a time (by using a transaction lock). Don't do any GC at all while a transaction is writing objects to disk. Instead we keep track of the amount of disk space allocated by the committing transaction. Then we do a (partial) GC immediately after committing the transaction.
Fix bugs in BTREE-DELETE and SPLIT-BTREE-NODE. Rename BTREE-DELETE to BTREE-DELETE-KEY and implement BTREE-DELETE for btrees with non-unique keys. Add stress test for btrees. Implement the :MIN, :MAX, :INCLUDE-MIN, :INCLUDE-MAX and :ORDER arguments for BTREE-MAP. Add some more CL mirror functions like P-MAPCAR, P-MAPC, P-DELETE-IF, etcetera.
Use Erik Naggum's SANS function instead of REMF. (From Edi Weitz.)
Ensure unique transaction IDs (from Edi Weitz).
WITH-TRANSACTION now returns the result of the body as first value. (From Edi Weitz.)
Let SETF functions give correct return values. (From Edi Weitz.)
More robust version of WITH-TRANSACTION (from Nikodemus Siivola).
Some trivial CVS header changes.
Created Rucksack CVS repository on common-lisp.net.
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|