Uploaded image for project: 'Drools'
  1. Drools
  2. DROOLS-264

JPAKnowledgeService stops to work suddenly

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Obsolete
    • Icon: Major Major
    • None
    • 5.5.0.Final
    • None
    • None

      From time to time, while facts are being inserted into session and persisted in database, the following exception occurs.
      The session is no more updated because SQL sentences can't be executed anymore. Sometimes, when session is restored from marshalled snapshot the same error happens.

      2013-09-17 11:17:03,959 ERROR [org.drools.persistence.jpa.JpaTimerJobInstance] Unable to execute timer job!
      java.lang.RuntimeException: Unable to load session snapshot
      at org.drools.persistence.SessionMarshallingHelper.loadSnapshot(SessionMarshallingHelper.java:96)
      at org.drools.persistence.SingleSessionCommandService.initKsession(SingleSessionCommandService.java:269)
      at org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:369)
      at org.drools.persistence.jpa.JpaTimerJobInstance.call(JpaTimerJobInstance.java:34)
      at org.drools.time.impl.DefaultTimerJobInstance.call(DefaultTimerJobInstance.java:1)
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
      at java.util.concurrent.FutureTask.run(FutureTask.java:138)
      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98)
      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:207)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:619)
      Caused by: java.lang.NullPointerException
      at org.drools.time.impl.JDKTimerService.removeJob(JDKTimerService.java:133)
      at org.drools.common.Scheduler.removeAgendaItem(Scheduler.java:75)
      at org.drools.common.DefaultAgenda.removeScheduleItem(DefaultAgenda.java:474)
      at org.drools.common.DefaultAgenda.removeActivation(DefaultAgenda.java:349)
      at org.drools.common.DefaultAgenda.cancelActivation(DefaultAgenda.java:687)
      at org.drools.reteoo.RuleTerminalNode.retractLeftTuple(RuleTerminalNode.java:320)
      at org.drools.reteoo.SingleLeftTupleSinkAdapter.doPropagateRetractLeftTuple(SingleLeftTupleSinkAdapter.java:224)
      at org.drools.reteoo.SingleLeftTupleSinkAdapter.propagateRetractLeftTuple(SingleLeftTupleSinkAdapter.java:98)
      at org.drools.reteoo.NotNode.propagateRetractLeftTuple(NotNode.java:444)
      at org.drools.reteoo.NotNode.assertObject(NotNode.java:142)
      at org.drools.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:59)
      at org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:364)
      at org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:235)
      at org.drools.reteoo.EntryPointNode.assertObject(EntryPointNode.java:240)
      at org.drools.marshalling.impl.ProtobufInputMarshaller.assertHandleIntoOTN(ProtobufInputMarshaller.java:483)
      at org.drools.marshalling.impl.ProtobufInputMarshaller.readFactHandles(ProtobufInputMarshaller.java:459)
      at org.drools.marshalling.impl.ProtobufInputMarshaller.readSession(ProtobufInputMarshaller.java:259)
      at org.drools.marshalling.impl.ProtobufInputMarshaller.readSession(ProtobufInputMarshaller.java:116)
      at org.drools.marshalling.impl.ProtobufMarshaller.unmarshall(ProtobufMarshaller.java:143)
      at org.drools.persistence.SessionMarshallingHelper.loadSnapshot(SessionMarshallingHelper.java:88)
      ... 11 more

            mfusco@redhat.com Mario Fusco
            nedoo Nedo Nedic (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: