This is interesting proposal, Brian. :-)
But I am still pondering will it really help. I have been grapling with this problem for a
while now since I encountered this in the "stress" test env.
Basically, in release 2.0, since we move to the flat-space approach as all the real POJO
attachment happens at "__JBossInternal__" node. E.g., we will store the real
POJO under, say, "__JBossInterna__/e4xx99ssjswi" node.
This imposes the fqn "__JBossInternal__" as the bottleneck as whenever I need to
map another POJO, I will need to obtain a WL on "__JBossInternal__" first. And
note that WL is needed for both attach and detach (a la, remove) as well.
So question is what options that we have to improve the concurrency while maintaining the
correctness? I am finding not a lot, other than using the Region concept to improve it
somewhat.
Can a specialized Node for "__JBossInternal__" help? During the creation and
removal of child node, actually I can forgo the interceptor chain and just rely on the
Node ConcurrentHashMap to provide synchonization. But I will run into problem when I need
to rollback either attach or detach operations (unless I still go thru the interceptor
stack).
Any thought?
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3999350#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...