Details
-
Bug
-
Resolution: Done
-
Major
-
JBossAS-3.2.6 Final
-
None
Description
SourceForge Submitter: johgr814 .
We've been dealing with this bug since we started up
our project with JBoss 3.0.0.
Now we are using JBoss 3.0.2RC2 with Postgres 7.2
and we still get it. When we are using a Collection
retrieved with a CMR-getter on a local interface the
Collection sporadicly maybe 1 of 200 calls thinks it was
created in another transaction that obviously isn't the
case. We get a stacktrace like this:
12:21:38,121 ERROR [LogInterceptor]
RuntimeException:
java.lang.IllegalStateException: The iterator of a CMR
collection may only be used within the transction in
which it was created
at
org.jboss.ejb.plugins.cmp.jdbc.bridge.RelationSet$1.verif
yIteratorIsValid(RelationSet.java:345)
at
org.jboss.ejb.plugins.cmp.jdbc.bridge.RelationSet$1.has
Next(RelationSet.java:298)
at
se.alleato.ejb.alexandria.server.facade.PersonFacadeBe
an.getNodePersonRoles(PersonFacadeBean.java:318)
...
This isn't isolated to any specific bean, instead it occurs
on Collection retrieved by local CMP interfaces that are
called often. It is obvious an errorenous behaviour that
can be worked around by catching the exception and
creating the Collection again by calling the getter again
which works fine but clearly is anoying.