Details
-
Bug
-
Resolution: Done
-
Major
-
None
-
7.39.0.Final
-
None
-
2020 Week 28-30 (from Jul 6)
-
-
NEW
-
NEW
Description
Hello,
When I deploy KIE Application into Karaf which doesn't support build-in capability of TransactionSynchronizationRegistry, so it will fallback into implementation with ThreadLocal
What's happening is during commit, the transaction resource is always clear no matter the caller own the transaction or not.
public void commit(boolean transactionOwner) { if ( transactionOwner ) { try { this.ut.commit(); } catch ( Exception e ) { logger.warn( "Unable to commit transaction", e); throw new RuntimeException( "Unable to commit transaction", e ); } } transactionResources.get().clear(); }
This causes rulesbytearray field in sessioninfo table is not persisted.
Please refer to comment from ngs-mtech on JtaTransactionManager.java
https://github.com/kiegroup/drools/commit/6189bdfaed78d540b464b83bcf6de5b34ee6888b