directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lecharny <elecha...@apache.org>
Subject ChangeLog + revert, broken , take 2
Date Tue, 17 Feb 2009 17:55:39 GMT
So now I'm facing an interesting problem.

I have a system which revert every modification done on each method,
including the LDIF injected within this method, but the current
ChangeLog system is cumulative. ie, each time I revert the previou
smodification, it does not remove the operation from the log, but it
create the reverse operations and store them in the changelog.

For instance :

tag(0)
add A -> CL contains -A
add B -> CL contains -B, -A
revert  -> CL contains +A, +B, -B, -A
tag(1)
add C -> CL contains -C,+A, +B, -B, -A
add A -> CL contains -A, -C,+A, +B, -B, -A
revert -> CL contains  +C,+A, -A, -C,+A, +B, -B, -A
...

the journal get longer and longer... What if I want to rollback to
tag(0) now ? I will have to play all the operations, even if I have
already reverted to (1)

If I have N tests, with N reverts, then you will have around N^2
operations to revert if you want to go back to the original
situation...

I don't see the point to kep all the reverts into the changeLog as if
they were normal operation. Reverting a revert is most certainly not
something likely to happen. If an admin do a revert by mistake, then
the journal might contain all the operation (including the reverts),
but this shoul dnot be used to manage the rollback mechanism.



-- 
Regards,
Cordialement,
Emmanuel L├ęcharny
www.iktek.com

Mime
View raw message