directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lecharny <>
Subject Re: ChangeLog + revert, broken , take 2
Date Thu, 19 Feb 2009 13:45:59 GMT
>> So let me sumarize :
>> - revert() will remove entries from the backend, but will add the reverted
>> operation into the changelog
> the revert can be a 'add' operation also (just to add a point, not that you
> are not aware of)

Yes, 'remove entries from the backend' should be 'apply reverted
changes into the backend'.

>> - clear() will remove everything from the changelog up to a specific rev
>> or tag, but don't remove anything from the server
>> That mean we need to do a revert() followed by a clear() to remove entries
>> from the backend and from the changelog, assuming that in this case, we will
>> have added reverted operation into the changeLog for nothing.
>> In this case, a revertAndClear() operation which removes entries from the
>> server and remove the associated reverted operations from the changelog, in
>> order to avoid this useless reverted operation creation and storage. We can
>> live with it, but as this is the second iteration on ChangeLog, it may be
>> time to give it a second thought.
> have a question here, we are storing every change operation's revision
> number in 'revisions' attribute of the entry
> this clear() will definitely make this attribute's semantic or any other
> operations involving this attribute (e.x an entry's entire version history)
> make it useless

The clear() will also apply the reverted operations to the backend,
which mean we will restore the previous revision, assuming that the
revision is stored into the CL.

> I believe this clear operation can only be helpful in case of entries that
> no longer exist in DIT, but still we need this info in CL, right?

No, because if an entry has been added, it should be removed. The CL
contains a log of all the operations, add, delete, modify, etc.

> Kiran Ayyagari

Emmanuel L├ęcharny

View raw message