jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas Mueller <muel...@adobe.com>
Subject Re: [jr3 microkernel] Write skew
Date Fri, 02 Dec 2011 07:12:46 GMT
Hi,

>One of the main goals of the Microkernel architecture was to get true
>write scalability.

If you mean concurrent writes within a cluster, then I agree. This is a
problem in Jackrabbit 2, and we need to solve it.


If you mean concurrent writes within the same repository is a goal, then
I'm not aware that we defined it as a goal. If you think it is a goal,
please explain and provide details where it is a problem. Please note
"throughput" problems are unrelated to "concurrency" problems. Saying
"Jackrabbit 2 is to slow therefore it needs to be more concurrent" is the
wrong conclusion. I do agree Jackrabbit 2 is slow. But if Jackrabbit 2
(unclustered) is too slow then we need to improve (and test for)
throughput. Not concurrency.

>If we go down that route, we have to accept that we
>are trading this for consistency.

If we switch to snapshot isolation, then this will affect how collisions
are handled. The behavior will change, and this might be unexpected.
However, there is not just one solution even if using snapshot isolation.
For example the commit could detect write collisions to the same node and
rollback, or merge. It's up to us what behavior we implement. Currently
all MicroKernel implementations merge changes, but this could be changed
if it's a problem.

Regards,
Thomas


Mime
View raw message