Hi guys,

so now that the 2.0.0-M2 vote is on its way, it's also time to discuss about what we want to put into the M3.

We have been a bit late, as we expected to release this version at least two weeks earlier, but we have been slowed down by some big issues in the replication sub-system.

If we think about what's missing, we can list :
- MMR : currently, we have implemented the Master/Slave system, we now need to implement the conflict resolution system. There is also one
feature we must improve : currently, we send a specific control for
MODDN operations to avoid sending all the moved entries. OpenLDAP
does not support this control, so we must also implement the standard
processing of MODDN operations.
- OSGi for the server
- HBase implementation
- removal of the one-level/sub-level index (see Stefan's mail, it opens some really interesting perspectives)

There are some other missing parts, but we don't have the power to process them in M2 :
- review the alias implementation
- review the administrative model implementation
- add the missing schema element we don't actually support (NF, DSC, DCR, MRU)
- review the kerberos implementation
- switching to enryUUID as a key to reference entries in the MasterTable, instead of Long. That would allows us to conveniently refers to entries cross partitions
- implement cross partitions move operations (this is not supported atm)

This can be moved to M4, IMO.

I may have missed some items, so feel free to extend the list here.

Al in all, we can probably cut a new release pretty soon, keeping the pace high by working on limited features instead of moving all directions.

Regarding the LDAP-API component, we have some urgent tasks on our plate :
- pursue the modularization of the schema, making it completely standalone. Ideally, it should be an OSGi service - split the module in two parts : a ldap-comons module, used by the server, studio and the ldap-api, and a ldap-api module, totally standalone, which exposes the API to users.

The second point is most certainly necessary. At this point, we have a mix of things in shared that are of no interest for the client, for instance. I'm not sure it will take more than a couple of days though.

We also have to add some documentation on the API ( a task I stared 2 months ago, but it's still in its infancy).

Last, not least, we need to improve the kerberos documentation. Many users complain about it. The truth is that we fixed some blocking issues those last weeks, bugs that were killing our implementation as a valid candidate for a production kerberos server. But bugs are bugs, we can fix them. OTOH, with a pathetic documentation, we can't expect to have users testing the kerberos server, and giving us some feedback about problems they found in the code. Sadly, we need some workforce to deal with this problem...

Last, not least, in the past two weeks, we discussed a lot with Kiran about the Journal (used by the replication system) and the way it works. We need to conduct some experimentation in those areas : - a fast and safe Journal. We have looked to KahalDB (the ActiveMQ journal), Derby log journal and a couple of other solutions. They all have issues (like the total lack of doc/javadoc for KahalDB, or the tight coupling with the code they are used in) - a MVCC implementation for the backend (HawtDB could be a good base for that)
- a transaction system
- a non-recursive AVLTree implementation

All those parts aren't urgent, and are probably more like research subjects, but anyway, it's important to mention that we need them in the long term. In other words, I'm emitting a signal for students or people considering entering the OSS world but don't know how to address such a big code base that it's a good way to be involved !

Ok, that's enough of a brain dump for the day, feel free to add your vision to this thread !

Thanks !

--
Regards,
Cordialement,
Emmanuel Lécharny
www.iktek.com

Reply via email to