directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Karasulu" <akaras...@apache.org>
Subject Re: New ChangeLog interceptor
Date Thu, 20 Sep 2007 00:13:14 GMT
Hey btw I move that page you had on the advanced user guide to the
developer's guide and
filled it in a bit.  Here's the new link in confluence:

http://cwiki.apache.org/confluence/display/DIRxSRVx11/Versioning+and+Snapshots

Alex

On 9/19/07, Alex Karasulu <akarasulu@apache.org> wrote:
>
> 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.
>
> Alex
>
> On 9/19/07, Emmanuel Lecharny <elecharny@gmail.com> 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
> > www.iktek.com
> >
>
>

Mime
View raw message