Heap consumption by JBossJTALocalTransactionProvider / High number of TransactionImple instances in a COMMITTED state in JBoss EAP

Solution Verified - Updated

Environment

  • Red Hat JBoss Enterprise Application Platform (EAP)
    • 7.1
    • 7.2
    • 7.3

Issue

  • Migrating from EAP 7.0 (or earlier)
  • High heap usage is associated with a single instance of org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider.
  • The JBossJTALocalTransactionProvider instance retains thousands of instances of com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple where _theTransaction.actionStatus == 7 (ActionStatus.COMMITTED).
  • Transaction timeout is disabled in the system.

Resolution

  • Do not disable transaction timeout in a production system.
    • Disabling transaction timeout is not recommended in a production system under any circumstance 1.
  • The timeout of TransactionImple instances will be addressed in a future release2

Root Cause

  • TransactionImple instances associated with EJB remote transaction participants are retained for (transaction timeout + transactions.stale-transaction-time1)
    • When transaction timeout is disabled, the effective timeout value is 1 year
    • When timeout is disabled, TransactionImple instances associated with EJB remote participants will be retained in memory for more than 1 year.
  • This is a known limitation (This content is not included.WFTC-86).
1

transactions.stale-transaction-time defaults to 10 minutes

Diagnostic Steps

The OQL below can be used to inspect the set of TransactionImple instances in a COMMITTED (actionStatus == 7) state

select * from com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple where _theTransaction.actionStatus = 7
Components
Category

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.