Thanks Brian. I think I kind of get the implication. However, arent getChildren or
getChildrenNames methods considered read operations, and if so, with mvcc, the reads
wouldnt need a write lock anyway. The read calls would return something that is based on
isolation level (REPEATABLE_READ) in that case. So how would that affect the application.
By the way, the only use case for which we need getChildren is to retrieve all objects of
a certain type that are cached. In that case, if we get a snapshot from before any of the
current running transaction started, that is good enough. The more I think about it, I
am pretty sure we don't need this in our application. But I am just trying to
understand if there is something obvious that I am ignoring, like nodes getting lost or
overwritten by different threads etc. For eg. just because I didnt set this option to
true, if two threads insert two nodes into this parent at the same time, we would never
run into a situation where one of the node is lost or overwritten by the other or
something of that nature, right? I wouldn't think so, but just confirming. Now,
its totally ok if the read calls at around the same time don't include this/these node
because of the transaction being not committed yet.
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4266399#...
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&a...