0

We are trying to get a reproducer but this issue comes up intermittently in our systems.We are on drools 7.6.0 version. We see this crash when our service tries to update rules at runtime under heavy load. After that all requests start to fail . This issue is coming while inserting fact in session.

We have seen very similar logs mentioned in https://issues.jboss.org/browse/DROOLS-1383 in the thread dump on that instance.

The stack trace is seen below

java.lang.ArrayIndexOutOfBoundsException: 1 at org.drools.core.phreak.RuleNetworkEvaluator.innerEval(RuleNetworkEvaluator.java:349) ~[drools-core-7.6.0.Final.jar:7.6.0.Final] at org.drools.core.phreak.RuleNetworkEvaluator.outerEval(RuleNetworkEvaluator.java:169) ~[drools-core-7.6.0.Final.jar:7.6.0.Final] at org.drools.core.phreak.RuleNetworkEvaluator.evaluateNetwork(RuleNetworkEvaluator.java:127) ~[drools-core-7.6.0.Final.jar:7.6.0.Final] at org.drools.core.phreak.RuleExecutor.evaluateNetwork(RuleExecutor.java:71) ~[drools-core-7.6.0.Final.jar:7.6.0.Final] at org.drools.core.common.DefaultAgenda.evaluateEagerList(DefaultAgenda.java:887) ~[drools-core-7.6.0.Final.jar:7.6.0.Final] at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1061) ~[drools-core-7.6.0.Final.jar:7.6.0.Final] at org.drools.core.common.DefaultAgenda.internalFireAllRules(DefaultAgenda.java:1014) ~[drools-core-7.6.0.Final.jar:7.6.0.Final] at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1006) ~[drools-core-7.6.0.Final.jar:7.6.0.Final] at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1318) ~[drools-core-7.6.0.Final.jar:7.6.0.Final] at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1309) ~[drools-core-7.6.0.Final.jar:7.6.0.Final] at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1293) ~[drools-core-7.6.0.Final.jar:7.6.0.Final]

Geek
  • 25
  • 6
  • With how many facts you encounter such issue ? Try using stateless session for rule execution. – Abhijit Humbe Aug 15 '18 at 12:48
  • We have very few facts less than 5. We were using stateful sessions in 6.5.0 but while we migrated o 7.6.0 , we started facing this issue in production. If we use stateless sessions, we will lose out on runtime updates . Wouldn't this be a problem ? We are doing kNewContainer.newKieSession() to create Session – Geek Aug 16 '18 at 16:46

0 Answers0