[jboss-jira] [JBoss JIRA] (JBRULES-3644) Scheduled Activations are not fired after unmarshalling
Philipp Herzig (JIRA)
jira-events at lists.jboss.org
Tue Oct 2 05:45:03 EDT 2012
[ https://issues.jboss.org/browse/JBRULES-3644?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Philipp Herzig updated JBRULES-3644:
------------------------------------
Description:
Currently, Scheduled Activations are not fired after they got unmarshalled from a binary. Although they reside on the agenda after unmarshalling, they have somehow an "orphan" status that leads to inconsistent state of the rule engine in general. As subsequent problem, deleting the rule that caused these "orphan" scheduled activations leads to a NPE when removing the timer job.
java.lang.NullPointerException
at org.drools.time.impl.JDKTimerService.removeJob(JDKTimerService.java:134)
at org.drools.reteoo.RuleTerminalNode$RTNCleanupAdapter.cleanUp(RuleTerminalNode.java:524)
at org.drools.reteoo.BetaNode.doRemove(BetaNode.java:454)
at org.drools.common.BaseNode.remove(BaseNode.java:106)
at org.drools.reteoo.RuleTerminalNode.doRemove(RuleTerminalNode.java:410)
at org.drools.common.BaseNode.remove(BaseNode.java:106)
at org.drools.reteoo.ReteooBuilder.removeRule(ReteooBuilder.java:261)
at org.drools.reteoo.ReteooRuleBase.removeRule(ReteooRuleBase.java:459)
at org.drools.common.AbstractRuleBase.removeRule(AbstractRuleBase.java:1106)
at org.drools.common.AbstractRuleBase.removeRule(AbstractRuleBase.java:1084)
at org.drools.impl.KnowledgeBaseImpl.removeRule(KnowledgeBaseImpl.java:208)
A detailed description can be found here: http://drools.46999.n3.nabble.com/rules-users-Protobuf-Marshaller-Question-ScheduledActivation-Persistence-td4019537.html
The attached test has been reworked to simply persist the session blob to a local file rather than a database. I should be easy to import as maven project.
was:
Currently, Scheduled Activations are not fired after they got unmarshalled from a binary. Although they reside on the agenda after unmarshalling, they have somhow an "orphan" status. Therefore, also the engine runs in an inconsistent state since deleting the rule that caused these "orphan" scheduled activations leads to a NPE when removing the timer job.
A detailed description can be found here: http://drools.46999.n3.nabble.com/rules-users-Protobuf-Marshaller-Question-ScheduledActivation-Persistence-td4019537.html
The attached test has been reworked to simply persist the session blob to a local file rather than a database.
> Scheduled Activations are not fired after unmarshalling
> -------------------------------------------------------
>
> Key: JBRULES-3644
> URL: https://issues.jboss.org/browse/JBRULES-3644
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: drools-core (expert), drools-core (fusion)
> Affects Versions: 5.4.0.CR1, 5.4.0.Final, 5.5.0.Beta1
> Reporter: Philipp Herzig
> Assignee: Mark Proctor
> Attachments: DroolsScheduledActivation.zip
>
>
> Currently, Scheduled Activations are not fired after they got unmarshalled from a binary. Although they reside on the agenda after unmarshalling, they have somehow an "orphan" status that leads to inconsistent state of the rule engine in general. As subsequent problem, deleting the rule that caused these "orphan" scheduled activations leads to a NPE when removing the timer job.
> java.lang.NullPointerException
> at org.drools.time.impl.JDKTimerService.removeJob(JDKTimerService.java:134)
> at org.drools.reteoo.RuleTerminalNode$RTNCleanupAdapter.cleanUp(RuleTerminalNode.java:524)
> at org.drools.reteoo.BetaNode.doRemove(BetaNode.java:454)
> at org.drools.common.BaseNode.remove(BaseNode.java:106)
> at org.drools.reteoo.RuleTerminalNode.doRemove(RuleTerminalNode.java:410)
> at org.drools.common.BaseNode.remove(BaseNode.java:106)
> at org.drools.reteoo.ReteooBuilder.removeRule(ReteooBuilder.java:261)
> at org.drools.reteoo.ReteooRuleBase.removeRule(ReteooRuleBase.java:459)
> at org.drools.common.AbstractRuleBase.removeRule(AbstractRuleBase.java:1106)
> at org.drools.common.AbstractRuleBase.removeRule(AbstractRuleBase.java:1084)
> at org.drools.impl.KnowledgeBaseImpl.removeRule(KnowledgeBaseImpl.java:208)
> A detailed description can be found here: http://drools.46999.n3.nabble.com/rules-users-Protobuf-Marshaller-Question-ScheduledActivation-Persistence-td4019537.html
> The attached test has been reworked to simply persist the session blob to a local file rather than a database. I should be easy to import as maven project.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list