Uploaded image for project: 'Red Hat Process Automation Manager'
  1. Red Hat Process Automation Manager
  2. RHPAM-2198

NullPointerException in org.drools.core.marshalling.impl.ProtobufOutputMarshaller.writeTimers in a multi-node setup

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Critical Critical
    • 7.4.1.GA
    • 7.3.1.GA
    • jBPM Core
      • RHPAM 7.3.1
      • kie-server running on two nodes
      • shared DB
      • EJB timers set up with DB persistence, shared DB
    • CR1
    • +
    • Hide

      See README file in the attached project

      Show
      See README file in the attached project
    • 2019 Week 29-31

      During process execution containing timers in a multi-node environment with DB backed EJB timers, the timer creation sporadically fails with a NPE:

      12:41:41,887 ERROR [org.jboss.as.ejb3.timer] (EJB timer-thread-pool - 31) WFLYEJB0022: Error during retrying timeout for timer: [id=1cfae375-54e6-4a8b-93bc-cf141e78d33e timedObjectId=kie-server.kie-server.EJBTimerScheduler auto-timer?:false persistent?:true timerService=org.jboss.as.ejb3.timerservice.TimerServiceImpl@29273fcc initialExpiration=Wed Jun 12 12:41:41 MDT 2019 intervalDuration(in milli sec)=0 nextExpiration=null timerState=RETRY_TIMEOUT info=EjbTimerJob [timerJobInstance=GlobalJpaTimerJobInstance [timerServiceId=com.myspace:case02391964:1.0.0-SNAPSHOT-timerServiceId, getJobHandle()=EjbGlobalJobHandle [uuid=3_93_START]]]]: javax.ejb.EJBTransactionRolledbackException: javax.transaction.RollbackException: ARJUNA016053: Could not commit transaction.
      	at org.jboss.as.ejb3.tx.CMTTxInterceptor.endTransaction(CMTTxInterceptor.java:114)
      	at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:261)
      	at org.jboss.as.ejb3.tx.CMTTxInterceptor.required(CMTTxInterceptor.java:362)
      	at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:144)
      ...
      Caused by: javax.transaction.RollbackException: ARJUNA016053: Could not commit transaction.
      	at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1300)
      	at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:126)
      	at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:89)
      	at org.wildfly.transaction.client.LocalTransaction.commitAndDissociate(LocalTransaction.java:77)
      	at org.wildfly.transaction.client.ContextTransactionManager.commit(ContextTransactionManager.java:71)
      	at org.jboss.as.ejb3.tx.CMTTxInterceptor.endTransaction(CMTTxInterceptor.java:88)
      	... 38 more
      Caused by: java.lang.NullPointerException
      	at org.drools.core.marshalling.impl.ProtobufOutputMarshaller.writeTimers(ProtobufOutputMarshaller.java:780)
      	at org.drools.core.marshalling.impl.ProtobufOutputMarshaller.serializeSession(ProtobufOutputMarshaller.java:206)
      	at org.drools.core.marshalling.impl.ProtobufOutputMarshaller.writeSession(ProtobufOutputMarshaller.java:114)
      	at org.drools.core.marshalling.impl.ProtobufMarshaller.marshall(ProtobufMarshaller.java:120)
      	at org.drools.core.marshalling.impl.ProtobufMarshaller.marshall(ProtobufMarshaller.java:104)
      	at org.drools.persistence.api.SessionMarshallingHelper.getSnapshot(SessionMarshallingHelper.java:78)
      	at org.drools.persistence.info.SessionInfo.transform(SessionInfo.java:98)
      	at org.drools.persistence.TriggerUpdateTransactionSynchronization.beforeCompletion(TriggerUpdateTransactionSynchronization.java:61)
      	at org.drools.persistence.jta.JtaTransactionSynchronizationAdapter.beforeCompletion(JtaTransactionSynchronizationAdapter.java:54)
      	at org.jboss.as.txn.service.internal.tsr.JCAOrderedLastSynchronizationList.beforeCompletion(JCAOrderedLastSynchronizationList.java:113)
      	at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:236)
      	at org.wildfly.transaction.client.AbstractTransaction.performConsumer(AbstractTransaction.java:247)
      	at org.wildfly.transaction.client.AbstractTransaction$AssociatingSynchronization.beforeCompletion(AbstractTransaction.java:292)
      	at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:76)
      	at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:360)
      	at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:91)
      	at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
      	at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1288)
      	... 43 more
      

        1. SCF-test.bmp
          SCF-test.bmp
          1.81 MB
        2. RHPAM-2198-logs.zip
          29 kB
        3. case02391964-reproducer.zip
          38 kB

              rhn-support-tsurdilo Tihomir Surdilovic (Inactive)
              rhn-support-mputz Martin Weiler (Inactive)
              Marian Macik Marian Macik
              Marian Macik Marian Macik
              Votes:
              0 Vote for this issue
              Watchers:
              13 Start watching this issue

                Created:
                Updated:
                Resolved: