]
RH Bugzilla Integration updated WFLY-2789:
------------------------------------------
Bugzilla References:
Remote client transaction timeout values are overwrote by hardcoded
values
--------------------------------------------------------------------------
Key: WFLY-2789
URL:
https://issues.jboss.org/browse/WFLY-2789
Project: WildFly
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: EJB
Reporter: Johnathon Lee
Assignee: David Lloyd
The EJB3 interceptor is not using client values for timeouts, this is a problem for
users trying to use EJB for transaction propagation.
Refer to the code in
https://github.com/wildfly/wildfly/blob/master/ejb3/src/main/java/org/jbo...:
private void createOrResumeXidTransaction(final XidTransactionID xidTransactionID)
throws Exception {
final TransactionManager transactionManager =
this.ejbRemoteTransactionsRepository.getTransactionManager();
final Transaction alreadyCreatedTx =
this.ejbRemoteTransactionsRepository.getImportedTransaction(xidTransactionID);
if (alreadyCreatedTx != null) {
// resume the already created tx
transactionManager.resume(alreadyCreatedTx);
} else {
// begin a new tx and add it to the tx repository
// TODO: Fix the tx timeout (which currently is passed as 300 seconds)
final Transaction newSubOrdinateTx =
this.ejbRemoteTransactionsRepository.importTransaction(xidTransactionID, 300);
// associate this tx with the thread
transactionManager.resume(newSubOrdinateTx);
}
}