[Neo-dev] Code status update & short roadmap

Vincent Pelletier vincent at nexedi.com
Wed Dec 15 14:20:19 CET 2010


Hi.

There is very little traffic on this list (...it's actually the first mail !) 
because all NEO development happens inside Nexedi, between me and gregory (as 
can be seen on the commit list[1]).

Still, I feel there is some need to summarise the current state of NEO from a 
developer stance and to list where it will go in short future.

A major recent event was the decision to drop support for "old" ZODB releases, 
ie we are now focusing on supporting 3.10 only (we were initially running on 
the old 3.4, as of Zope 2.8 as we can easily run tests against it). This 
relieved us from the pain of running conflicting tests (version 3.4 requires 
tpc_begin to ignore silently extra calls, 3.10 requires it to raise).
The goal was to make it easier to implement newer features, such as MVCC 
support (which was committed very recently[2]).

NEO development on the short term will focus on fixing ZODB unit tests:

Current test results ignore one ZODB test, check_tid_ordering_w_commit, which 
demonstrates an erroneous link we made in NEO client between transaction and 
threads: a transaction can start in a thread and end in another. This is 
currently not possible in NEO, and cause a lock of client node, stalling 
tests. Client code will be fixed so this test passes.

An iterator test fails on current code, which is because current iterator 
implementation is too superficial. It is being completely reworked.

Other failures are related to pack support. They fail because NEO doesn't 
implement garbage collection (ie, deleting unreachable objects). These tests 
won't be fixed in short term, as NEO implements the IExternalGC interface. 
Someday, NEO might implement some GC internally, but this is definitely not a 
priority.

[1] https://mail.tiolive.com/mailman/listinfo/neo-report
[2] http://mail.tiolive.com/pipermail/neo-report/20101214/001574.html

Regards,
-- 
Vincent Pelletier



More information about the Neo-dev mailing list