I am using jboss-4.2.1 on linux (2.6.9-55.0.6) with the jdk1.5.0_12 release. My
application makes extensive use of Stateless Session Beans and CMP Entity Beans (both
version 2.1). I am using a custom container configuration that is based on the
"Standard CMP 2.x EntityBean" container configuration, but uses commit option
A.
Under load/transactional contention, I am encountering the "removing bean lock and it
has tx set" IllegalStateException. The documentation states that this error is
usually the result of an incorrectly implemented primary key class. I do not believe that
this is what is causing my error for two reasons:
1) My pk classes are generated by xdoclet (version 1.2.3, after they fixed the bugs
related to incorrect pk class generation) and I have examined them closely and run unit
tests on them and they seem to work just fine.
2) The IllegalStateExceptions do not occur at predictable points during execution. They
seem to occur almost randomly - though only when there is transactional contention on a
bean. Also, the exceptions are thrown *MUCH* more frequently on a four processor machine
(pretty often) than they are on a single processor machine (almost never).
I have turned on trace logging and have observed that the error is typically thrown after
the trace log message documenting the end of the call to
EntityInstanceInterceptor.invoke() but before the trace log message documenting the end of
the EntityLockInterceptor.invoke() method (i.e., it seems to be occurring in the
removeLockRef() call in the last finally block in the EntityLockInterceptor.invoke()
method. The very strange thing is that in the action on this bean immediately prior to
the one that causes the error, I see the EntityInstanceInterceptor end invoke message
followed by the EntityLockInterceptor end invoke message, but with no intervening removing
lock ref message (and no errors or exception reported in there either). This i sstrange
to me, because I do not understand why that remove lock ref message would not be hitting
the log since the two messages on either side of it are.
I can provide a snippet from the relevant section of the log if anyone would find it
useful.
Any help is greatly appreciated.
Thank you!
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4101981#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...