wrapping up old issues
http://agilewiki.wiki.sourceforge.net/CowDb
Release cowdb0.8.10 is out and symbolic links are now fully functional. There are also programming guides now for symbolic links, well known names and deep copies.
Exploring Time as a dimension in Software Applications and further developments of the AgileWiki project, salted lightly with personal notes.
http://agilewiki.wiki.sourceforge.net/CowDb
The next release (cowdb0.8.9) has been cleaned up quite a bit and some new concepts have been included.
In the current release of cowdb, we take the "What me worry?" approach to symbolic links--they are the responsibilit of the application programmer to maintain. And this can be a significant source of complexity--especially when manual maintenance is allowed, and multi-level deep copies are supported. So we need to automate things a bit more. Especially when we start supporting pathname references.
Release cowdb0.8.7 is out, and it includes b-trees and range iterators. I've also added a basic user guide to the Wiki. Check it out at
Only now have I finally implemented n-level branching (i.e. deep copies)--and it was a lot harder than I had thought, at each and every step of the way.
In today's release of cowdb0.8.4, persistent objects now all have names. Turns out, this simplifies things, as branches and forks already had names. It also lays some interesting groundwork for making cowdb much easier to work with, aside from providing the basis for symbolic references (via handles) and deep copies. But the first thing we need to do is to introduce some new terminology--yet to be implemented.
Release 0.8.2 is out, and it is looking great. Speedup has been better than 10X. And with large hash tables being supported, CowDB is now actually useful for larger applications.
Cowdb now supports handle tables, which have half the disk footprint of persistent tables. Also, PersistentTable and HandleTable now support HashMap as an alternative to TreeMap.
Release 8.1 has been posted, the transactional API has been revised, the new threading model has been put in place and tests have been devised for exercising the new threading model. Time to move on to the next item.