David Lloyd created WFLY-7860:
---------------------------------
Summary: Only import transactions lazily
Key: WFLY-7860
URL:
https://issues.jboss.org/browse/WFLY-7860
Project: WildFly
Issue Type: Enhancement
Components: EJB
Reporter: David Lloyd
The EJB client/server protocol can perform many optimizations if a server can lazily
import the transaction only if needed when an invocation arrives for processing.
Unfortunately our CMTTxInterceptor infrastructure is built around the assumption that the
transaction (if any) will resumed on the calling thread, which prevents the EJB transport
protocol from reporting back that the transaction was not used.
The CMTTxInterceptor and its subtypes must be modified to look for the transaction on the
invocation object, rather than on the current thread. The local EJB invocation sources
must suspend the transaction and install it on to the invocation context.
CMTTxInterceptor would then assume that the current thread holds no transaction, resuming
if necessary, instead of assuming that the current thread holds the inherited transaction
and suspending if necessary.
Once this is complete, org.jboss.as.ejb3.remote.EJBRemoteTransactionPropagatingInterceptor
can be completely removed from the container.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)