directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Karasulu" <>
Subject Re: New ChangeLog interceptor
Date Wed, 19 Sep 2007 16:57:54 GMT
FYI the present commits

(1) took the workshop example from the "Embedding ApacheDS" seminar and
added it to the server adapting it to the changes.
(2) added some SPI for such a server service for extension
(3) the present interceptor does not use this

There's a bit more work to do to flush out a coherent picture.  I will get
this done today and
document it all in the wiki.  I will also modify the existing interceptor to
use these interfaces
but it will still not be fully functional since I need to figure out how to
implement an anti-ldif
calculation algorithm.

I'll add the convos we have had on IRC so others can back track and also jot
down some other
ideas around this facility.


On 9/19/07, Emmanuel Lecharny <> wrote:
> Hi guys,
> Alex just committed a very interesting new interceptor into the trunk
> ; the ChangeLog interceptor which was drafted by Ersin a year ago
> (more or less).
> This new interceptor will be very usefull for many usage, like :
> - logging _all_ the requests sent to the server (valuable when debugging)
> - defining some kind of journal we can replay if the server just
> crashed and we have lost some data (because the data are written on
> disk on a regular basis, not synchronously, unless you ask the server
> to do so )
> - add some kind of snapshot + rollback/commit functionality.
> However, we need to polish the code to support all those new
> functionalities.
> Atm, for instance, we can't rollback for two reasons :
> 1) we have to define some  tags to tell the server from which point we
> want a rollback to start
> 2) we have to save an 'anti-request' data into the log. 'Anti-request'
> is just the opposite request sent by the user. For instance, suppose
> that the user is adding some entry, the anti-request (A-req) will be a
> "DelRequest <added entry DN>". If the user is deleting an entry, the
> A-req is a little bit more complex : the interceptor will have to
> lookup for the entry first, and save it as a "AddRequest <looked up
> entry>". For modify requests and ModifyDN requests, this can bbecome
> complex...
> 3) We also have to define a control or an extended request to set this
> tag, and another one to do the rollback or to discard the snapshot.
> None of those tasks are complex per se, but we have to add them.
> Do you have any other ideas, or opinions ?
> --
> Regards,
> Cordialement,
> Emmanuel L├ęcharny

View raw message