[jboss-jira] [JBoss JIRA] (DROOLS-576) NullPointerException in ActivationTimerInputMarshaller.deserialize()
Toshiya Kobayashi (JIRA)
issues at jboss.org
Fri Aug 15 02:50:29 EDT 2014
Toshiya Kobayashi created DROOLS-576:
----------------------------------------
Summary: NullPointerException in ActivationTimerInputMarshaller.deserialize()
Key: DROOLS-576
URL: https://issues.jboss.org/browse/DROOLS-576
Project: Drools
Issue Type: Bug
Security Level: Public (Everyone can see)
Affects Versions: 6.2.0.Beta1
Environment: RETEOO engine
Reporter: Toshiya Kobayashi
Assignee: Mark Proctor
With the following conditions:
- A persisted ksession
- RETEOO engine
- ksession is disposed while a timer is activated
- ksession is loaded with a new kbase which doesn't have a rule which associated with the timer
ActivationTimerInputMarshaller.deserialize() throws a NullPointerException so failed to load the ksession.
{noformat}
java.lang.RuntimeException: Unable to load session snapshot
at org.drools.persistence.SessionMarshallingHelper.loadSnapshot(SessionMarshallingHelper.java:88) ~[classes/:na]
at org.drools.persistence.SingleSessionCommandService.initExistingKnowledgeSession(SingleSessionCommandService.java:239) ~[classes/:na]
at org.drools.persistence.SingleSessionCommandService.<init>(SingleSessionCommandService.java:172) ~[classes/:na]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) [na:1.7.0_67]
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) [na:1.7.0_67]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) [na:1.7.0_67]
at java.lang.reflect.Constructor.newInstance(Constructor.java:526) [na:1.7.0_67]
at org.drools.persistence.jpa.KnowledgeStoreServiceImpl.buildCommandService(KnowledgeStoreServiceImpl.java:122) [classes/:na]
at org.drools.persistence.jpa.KnowledgeStoreServiceImpl.loadKieSession(KnowledgeStoreServiceImpl.java:90) [classes/:na]
at org.drools.persistence.jpa.KnowledgeStoreServiceImpl.loadKieSession(KnowledgeStoreServiceImpl.java:39) [classes/:na]
at org.kie.internal.persistence.jpa.JPAKnowledgeService.loadStatefulKnowledgeSession(JPAKnowledgeService.java:130) [kie-internal-6.2.0-SNAPSHOT.jar:6.2.0-SNAPSHOT]
at org.drools.persistence.timer.integrationtests.TimerAndCalendarTest.testTimerWithRemovingRule(TimerAndCalendarTest.java:340) [test-classes/:na]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_67]
...
Caused by: java.lang.NullPointerException: null
at org.drools.core.common.Scheduler$ActivationTimerInputMarshaller.deserialize(Scheduler.java:216) ~[drools-core-6.2.0-SNAPSHOT.jar:6.2.0-SNAPSHOT]
at org.drools.core.marshalling.impl.ProtobufInputMarshaller.readTimer(ProtobufInputMarshaller.java:700) ~[drools-core-6.2.0-SNAPSHOT.jar:6.2.0-SNAPSHOT]
at org.drools.core.marshalling.impl.ProtobufInputMarshaller.readSession(ProtobufInputMarshaller.java:282) ~[drools-core-6.2.0-SNAPSHOT.jar:6.2.0-SNAPSHOT]
at org.drools.core.marshalling.impl.ProtobufInputMarshaller.readSession(ProtobufInputMarshaller.java:155) ~[drools-core-6.2.0-SNAPSHOT.jar:6.2.0-SNAPSHOT]
at org.drools.core.marshalling.impl.ProtobufMarshaller.unmarshall(ProtobufMarshaller.java:110) ~[drools-core-6.2.0-SNAPSHOT.jar:6.2.0-SNAPSHOT]
at org.drools.core.marshalling.impl.ProtobufMarshaller.unmarshall(ProtobufMarshaller.java:54) ~[drools-core-6.2.0-SNAPSHOT.jar:6.2.0-SNAPSHOT]
at org.drools.persistence.SessionMarshallingHelper.loadSnapshot(SessionMarshallingHelper.java:83) ~[classes/:na]
... 44 common frames omitted
{noformat}
Probably we may silently ignore the timer when leftTuple is not found.
--
This message was sent by Atlassian JIRA
(v6.2.6#6264)
More information about the jboss-jira
mailing list