[jboss-jira] [JBoss JIRA] (DROOLS-5483) RulesByteArray is never persistent into SessionInfo Table

Agustino Alim (Jira) issues at jboss.org
Fri Jul 3 21:39:43 EDT 2020


Agustino Alim created DROOLS-5483:
-------------------------------------

             Summary: RulesByteArray is never persistent into SessionInfo Table
                 Key: DROOLS-5483
                 URL: https://issues.redhat.com/browse/DROOLS-5483
             Project: Drools
          Issue Type: Bug
          Components: core engine
    Affects Versions: 7.39.0.Final
            Reporter: Agustino Alim
            Assignee: Mario Fusco


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

[https://github.com/kiegroup/drools/blob/master/drools-persistence/drools-persistence-api/src/main/java/org/drools/persistence/jta/JtaTransactionManager.java]

 

What's happening is during commit, the transaction resource is always clear no matter the caller own the transaction or not.

 
{code:java}
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();
}
{code}
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#diff-247b587f2ee1112eda33c922619bb276]

[https://github.com/kiegroup/drools/commit/6189bdfaed78d540b464b83bcf6de5b34ee6888b]



--
This message was sent by Atlassian Jira
(v7.13.8#713008)



More information about the jboss-jira mailing list