[JBoss JIRA] (DROOLS-3066) NPE in Drools org.drools.core.rule.SingleAccumulate.reverse(SingleAccumulate.java:124)
by Luca Molteni (Jira)
[ https://issues.jboss.org/browse/DROOLS-3066?page=com.atlassian.jira.plugi... ]
Luca Molteni updated DROOLS-3066:
---------------------------------
Sprint: 2019 Week 20-22 (was: 2019 Week 17-19)
> NPE in Drools org.drools.core.rule.SingleAccumulate.reverse(SingleAccumulate.java:124)
> ---------------------------------------------------------------------------------------
>
> Key: DROOLS-3066
> URL: https://issues.jboss.org/browse/DROOLS-3066
> Project: Drools
> Issue Type: Bug
> Components: executable model
> Affects Versions: 7.4.1.Final
> Environment: Windows 7
> Oracle Java Development Kit 1.8.0_111
> Eclipse Oxygen 3a
> Optaplanner 7.4.1.Final
> Reporter: Philip Harding
> Assignee: Luca Molteni
> Priority: Major
> Attachments: NPE_Drools_MWE.zip
>
> Original Estimate: 2 days
> Remaining Estimate: 2 days
>
> The rule
> {code:java}
> rule "globalRequiredPredecessorAfterMe"
> when
> $rpAll: Set(size>1) from accumulate (
> Customer(Domicile != null, $rpAfterMe: requiredPredecessorsAfterMe);
> collectSet($rpAfterMe)
> )
> then
> scoreHolder.addMediumConstraintMatch(kcontext, - $rpAll.size()-1);
> end
> {code}
> gives following NPE within the attached Optaplanner model:
> {code:java}
> Exception in thread "main" java.lang.RuntimeException: java.lang.NullPointerException
> at org.drools.core.rule.SingleAccumulate.reverse(SingleAccumulate.java:124)
> at org.drools.core.phreak.PhreakAccumulateNode.removeMatch(PhreakAccumulateNode.java:796)
> at org.drools.core.phreak.PhreakAccumulateNode.doRightUpdatesProcessChildren(PhreakAccumulateNode.java:517)
> at org.drools.core.phreak.PhreakAccumulateNode.doRightUpdates(PhreakAccumulateNode.java:450)
> at org.drools.core.phreak.PhreakAccumulateNode.doNode(PhreakAccumulateNode.java:76)
> at org.drools.core.phreak.RuleNetworkEvaluator.switchOnDoBetaNode(RuleNetworkEvaluator.java:581)
> at org.drools.core.phreak.RuleNetworkEvaluator.evalBetaNode(RuleNetworkEvaluator.java:552)
> at org.drools.core.phreak.RuleNetworkEvaluator.evalNode(RuleNetworkEvaluator.java:379)
> at org.drools.core.phreak.RuleNetworkEvaluator.innerEval(RuleNetworkEvaluator.java:339)
> at org.drools.core.phreak.RuleNetworkEvaluator.outerEval(RuleNetworkEvaluator.java:175)
> at org.drools.core.phreak.RuleNetworkEvaluator.evaluateNetwork(RuleNetworkEvaluator.java:133)
> at org.drools.core.phreak.RuleExecutor.reEvaluateNetwork(RuleExecutor.java:212)
> at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:87)
> at org.drools.core.concurrent.AbstractRuleEvaluator.internalEvaluateAndFire(AbstractRuleEvaluator.java:34)
> at org.drools.core.concurrent.SequentialRuleEvaluator.evaluateAndFire(SequentialRuleEvaluator.java:43)
> at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1067)
> at org.drools.core.common.DefaultAgenda.internalFireAllRules(DefaultAgenda.java:1014)
> at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1006)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1337)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1328)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1312)
> at org.optaplanner.core.impl.score.director.drools.DroolsScoreDirector.calculateScore(DroolsScoreDirector.java:117)
> at org.optaplanner.core.impl.score.director.AbstractScoreDirector.doAndProcessMove(AbstractScoreDirector.java:187)
> at org.optaplanner.core.impl.constructionheuristic.decider.ConstructionHeuristicDecider.doMove(ConstructionHeuristicDecider.java:126)
> at org.optaplanner.core.impl.constructionheuristic.decider.ConstructionHeuristicDecider.decideNextStep(ConstructionHeuristicDecider.java:100)
> at org.optaplanner.core.impl.constructionheuristic.DefaultConstructionHeuristicPhase.solve(DefaultConstructionHeuristicPhase.java:74)
> at org.optaplanner.core.impl.solver.AbstractSolver.runPhases(AbstractSolver.java:88)
> at org.optaplanner.core.impl.solver.DefaultSolver.solve(DefaultSolver.java:191)
> at canihazafischbroetchenplz.app.TestApp.main(TestApp.java:35)
> Caused by: java.lang.NullPointerException
> at org.drools.core.base.accumulators.CollectSetAccumulateFunction.reverse(CollectSetAccumulateFunction.java:118)
> at org.drools.core.base.accumulators.CollectSetAccumulateFunction.reverse(CollectSetAccumulateFunction.java:49)
> at org.drools.core.base.accumulators.JavaAccumulatorFunctionExecutor.reverse(JavaAccumulatorFunctionExecutor.java:133)
> at org.drools.core.rule.SingleAccumulate.reverse(SingleAccumulate.java:116)
> ... 28 more
> {code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 2 months
[JBoss JIRA] (DROOLS-3819) Rule Unit Handling: restore older behavior in new prototype
by Edoardo Vacchi (Jira)
[ https://issues.jboss.org/browse/DROOLS-3819?page=com.atlassian.jira.plugi... ]
Edoardo Vacchi updated DROOLS-3819:
-----------------------------------
Sprint: 2019 Week 20-22
> Rule Unit Handling: restore older behavior in new prototype
> -----------------------------------------------------------
>
> Key: DROOLS-3819
> URL: https://issues.jboss.org/browse/DROOLS-3819
> Project: Drools
> Issue Type: Bug
> Reporter: Edoardo Vacchi
> Assignee: Edoardo Vacchi
> Priority: Major
> Labels: drools-core, submarine
> Fix For: 8.0.0.Final
>
>
> I have disabled generation of `unit()` API invocation on DRL compiler in order to make the Unit prototype work quickly. We are now assuming that 1 unit === 1 session, therefore some previous assumptions do not hold anymore. Previous assertions are therefore broken. It is also a good time to re-evaluate some previous considerations on how rule units are supposed to work (e.g. reconsider how guards work etc)
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 2 months
[JBoss JIRA] (DROOLS-3825) Model compiler should not duplicate files across runs
by Mario Fusco (Jira)
[ https://issues.jboss.org/browse/DROOLS-3825?page=com.atlassian.jira.plugi... ]
Mario Fusco updated DROOLS-3825:
--------------------------------
Sprint: 2019 Week 20-22 (was: 2019 Week 17-19)
> Model compiler should not duplicate files across runs
> -----------------------------------------------------
>
> Key: DROOLS-3825
> URL: https://issues.jboss.org/browse/DROOLS-3825
> Project: Drools
> Issue Type: Bug
> Reporter: Edoardo Vacchi
> Assignee: Mario Fusco
> Priority: Major
> Labels: drools-core
>
> If you don't {{mvn clean}} each time you generate the executable model, new files will be generated at each run.
> These seem to be the culprit:
> {{PackageModel#getPackageUUID}}
> {code}
> private String generateRulesFileName() {
> return RULES_FILE_NAME + generateUUID();
> }
> {code}
> solution: use a counter; the compiler is single-threaded, two runs produce the same output, existing files will be just overwritten
> deliverable: test case verifying files do not grow in number across runs
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 2 months
[JBoss JIRA] (DROOLS-4012) [DMN Designer] Imported node can be dragged to all tabs
by Jozef Marko (Jira)
Jozef Marko created DROOLS-4012:
-----------------------------------
Summary: [DMN Designer] Imported node can be dragged to all tabs
Key: DROOLS-4012
URL: https://issues.jboss.org/browse/DROOLS-4012
Project: Drools
Issue Type: Bug
Components: DMN Editor
Reporter: Jozef Marko
Assignee: Michael Anstis
Attachments: drag-imported.webm
The imported nodes from the *Decision Components* panel can be dragged to diagram, even if the *Model* tab is not selected. It should be possible to drag them to diagram just if the *Model* tab is selected.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 2 months
[JBoss JIRA] (DROOLS-3825) Model compiler should not duplicate files across runs
by Edoardo Vacchi (Jira)
[ https://issues.jboss.org/browse/DROOLS-3825?page=com.atlassian.jira.plugi... ]
Edoardo Vacchi updated DROOLS-3825:
-----------------------------------
Labels: drools-core (was: )
> Model compiler should not duplicate files across runs
> -----------------------------------------------------
>
> Key: DROOLS-3825
> URL: https://issues.jboss.org/browse/DROOLS-3825
> Project: Drools
> Issue Type: Bug
> Reporter: Edoardo Vacchi
> Assignee: Mario Fusco
> Priority: Major
> Labels: drools-core
>
> If you don't {{mvn clean}} each time you generate the executable model, new files will be generated at each run.
> These seem to be the culprit:
> {{PackageModel#getPackageUUID}}
> {code}
> private String generateRulesFileName() {
> return RULES_FILE_NAME + generateUUID();
> }
> {code}
> solution: use a counter; the compiler is single-threaded, two runs produce the same output, existing files will be just overwritten
> deliverable: test case verifying files do not grow in number across runs
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 2 months
[JBoss JIRA] (DROOLS-3825) Model compiler should not duplicate files across runs
by Edoardo Vacchi (Jira)
[ https://issues.jboss.org/browse/DROOLS-3825?page=com.atlassian.jira.plugi... ]
Edoardo Vacchi reassigned DROOLS-3825:
--------------------------------------
Assignee: Mario Fusco (was: Edoardo Vacchi)
> Model compiler should not duplicate files across runs
> -----------------------------------------------------
>
> Key: DROOLS-3825
> URL: https://issues.jboss.org/browse/DROOLS-3825
> Project: Drools
> Issue Type: Bug
> Reporter: Edoardo Vacchi
> Assignee: Mario Fusco
> Priority: Major
>
> If you don't {{mvn clean}} each time you generate the executable model, new files will be generated at each run.
> These seem to be the culprit:
> {{PackageModel#getPackageUUID}}
> {code}
> private String generateRulesFileName() {
> return RULES_FILE_NAME + generateUUID();
> }
> {code}
> solution: use a counter; the compiler is single-threaded, two runs produce the same output, existing files will be just overwritten
> deliverable: test case verifying files do not grow in number across runs
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
7 years, 2 months