finally, I got all the tests passing ! I found a big big bug in Mavibot
delete operation, which was leaving the BTree in a bad state (ie, some
entries suposely being deleted was still present). Once I fixed this bug
(it was easy), I had all the server-integ and all the other tests
I'm now pretty sure that this bug was there for quite a long time,
because I had random failures before while running tests, and had to run
the tests more than once to get them running. The random failure was
linked to the fact that we were using UUID to index the master table,
and as UUID were randomly generated made it possible that the tests were
passing from time to time.
In the process, I was able to speed up the add operation by removing the
useless drop/add operation on the rdnIndex, which speed up the addition
All in all, we have now a server which run faster than with JDBM.
Although we are not ready yet to get a release done. There are a few
failures in Mavibot (in-memory partition browse operation is somehow
broken due to some modifications I have done 2 weeks ago) and there are
some tuning to do in the configuration to add some support for the cache
used in Mavibot. Bt this is nothng really big.
I'm confident now that we have something decent, even if we have many
things to add to have an even faster server :
- we should add some cache for indexes
- we don't yet support revisions in Mavibot (currently, we have quite
the same thing than JDBM)
- the cache is not efficient (ehCache is a bug ball of things, we dont
need all of it)
- searches performance get very low when we don't have enough memory,
and this has to be fixed (JDBM behaves better in such case)
Those are quite important improvements and enhancements to add to the
server, but I think that could be done in a 2.0-RC2.
We are not far at all from a RC1 !