directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel L├ęcharny <>
Subject [Mavibot] Heads up
Date Wed, 18 Dec 2013 08:12:20 GMT
Hi guys,

Mavibot 1.0.0-M3 has been released last week, and announced today (we
have had some difficulties with the svn trigger that was not anymore
working when the web site was updating).

In the mean time, I did a huge refactoring on the code to move all the
classes ina  single package, which allows the methods and classes to be
package protected. We also now have a single BTreeFactory to create a
BTree, be it a in-memory or persisted.

Now that this cleanup has been done, we have 2 big additions to make :
- bulk load
- transactions

The bulk load feature is currently being carried by Kiran (alas, I
modified the API, so he will have a bit of a hard time to modify his

The transactions support is on me. It's all about saving some writes by
gathering many modifications in memory before flushing the pages on
disk, and as it will be a cross-btree transaction, it will guarantee
that ApacheDS will have real ACID modifications with Mavibot. The fact
that we keep the modifications in memory across btrees will save a lot f
disk write, as we may update teh same page many times if we update the
same btree more than once (this is obvious for the root page, but it's
also true for the evision btree and FreePages btrees). Hopefully, that
will bring way better update performances.

That's pretty much it for Mavibot, and I think that with those two
features, we will have a usable lib !

One thing we would like to add is a better and lighter cache (ehCache is
quite heavy, and when I profile the code, around 35% of the time is
spent in it). ANother important feature would be to use MemoryMapped
Files to increase the speed.

Ah, I almost forgot : documentation !!!

Emmanuel L├ęcharny 

View raw message