SynchronizationInterceptor#aroundInvoke should not be synchronized
------------------------------------------------------------------
Key: JBSEAM-1272
URL:
http://jira.jboss.com/jira/browse/JBSEAM-1272
Project: JBoss Seam
Issue Type: Bug
Components: Core
Affects Versions: 1.2.1.GA
Environment: Seam 1.2.1GA
Reporter: Paul Lorenz
Because SynchronizationInterceptor#aroundInvoke is synchronized, the locking code inside
the method is accessed serially (at least for Session scoped JavaBeans). This means that
access to the bean will be serialized by synchronizing on the interceptor, rather than on
the RentrantLock. The also means that the timeout will never be used, and if something
deadlock inside the interceptor, things trying to enter the block will also deadlock
indefinitely. This caused our production system to lock up today. We were unable to
determine if there is some other reason for the synchronized being on the method, but
couldn't think of one, since the scope for the two methods of synchronized is the
same.
As an aside, Seam is great! Thank you for all the hard work.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira