13.7. Transaction Service FAQ

This section presents some of the most common configuration issues with JBoss Transaction Service.
Q: I turned on debug logging, but nothing is logged.
Q: Why do server logs show WARN Adding multiple last resources is disallowed., and why are my transactions are aborted?
Q: My server terminated unexpectedly. It is running again, but my logs are filling with messages like WARN  [com.arjuna.ats.jta.logging.loggerI18N] [com.arjuna.ats.internal.jta.resources.arjunacore.norecoveryxa] Could not find new XAResource to use for recovering non-serializable XAResource.
Q: My transactions take a long time and sometimes strange things happen. The server log contains WARN [arjLoggerI18N] [BasicAction_58] - Abort of action id ... invoked while multiple threads active within it.
Q:
I turned on debug logging, but nothing is logged.
A:
JBossTS sends log statements though two levels of filters.
  1. Logs go through JBoss Transaction Service's own logging abstraction layer.
  2. Logs go through JBoss Enterprise Application Platform's log4j logging system.
A log statement must pass both filters to be printed. A typical mistake is enabling only one or the other of the logging systems. See Table 13.2, “Additional Properties for JBoss Transaction Service” for more information.
Q:
Why do server logs show WARN Adding multiple last resources is disallowed., and why are my transactions are aborted?
A:
You are probably using a <local-xa-datasource> and trying to use more than one one-phase aware participant. This is a configuration to be avoided. See Section 13.4, “Last Resource Commit Optimization (LRCO)” for more information. If you have further concerns, please contact Global Support Services.
Q:
My server terminated unexpectedly. It is running again, but my logs are filling with messages like WARN  [com.arjuna.ats.jta.logging.loggerI18N] [com.arjuna.ats.internal.jta.resources.arjunacore.norecoveryxa] Could not find new XAResource to use for recovering non-serializable XAResource.
A:
You may not have configured all resource managers for recovery. Refer to the Recovery chapter of the JBoss Transactions Administration Guide for more information on configuring resource managers for recovery.
Q:
My transactions take a long time and sometimes strange things happen. The server log contains WARN [arjLoggerI18N] [BasicAction_58] - Abort of action id ... invoked while multiple threads active within it.
A:
Transactions which exceed their timeout may be rolled back. This is done by a background thread, which can confuse some application code that may be expecting an interrupt. Refer to Section 13.5, “Transaction Timeout Handling” for more information.
If you have questions besides the ones addressed above, please consult the other JBoss Transactions guides, or contact Global Support Services.