- Much simpler.

erm, i beg to differ ... ;)

So do I ;-)

Apart from the benefits, it is a plain necessity for transient space
implementations on top of the Microkernel: without proper consolidation
users could end up not being able to save their (valid) transient
modifications. Consider a first user doing

/a:/t/x +/t/x/y:{}>/t/x:/b

if in the meanwhile another user removes x the save operation for the first
user would fail.

how could another user remove /t/x? it only exists in the first user's
transient space.

Sorry typo. My last sentence should read: "if in the meanwhile another user removes *+/t* the save operation for the first user would fail.

Michael


cheers
stefan


After consolidation, above change log would look like

+/a/y:{}>/a:/b

and can be saved.

Michael



cheers
stefan


Michael


[1] http://markmail.org/message/qkkcvtmtapas2cx4
[2]

http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-microkernel/src/main/java/org/apache/jackrabbit/state/ChangeLog.java?view=markup
[3]

http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-microkernel/src/test/java/org/apache/jackrabbit/state/ChangeLogFuzzTest.java?view=markup

Reply via email to