]
Mark Proctor closed JBRULES-2762.
---------------------------------
I have tried a fix on this, let me know if the problem persists.
ArrayIndexOutOfBoundsException in
org.drools.core.util.AbstractHashTable
------------------------------------------------------------------------
Key: JBRULES-2762
URL:
https://issues.jboss.org/browse/JBRULES-2762
Project: Drools
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: drools-core (expert)
Affects Versions: 5.1.1.FINAL
Environment: JBoss 5.1 on JDK6, 64bit Windows Server
Reporter: Lubos Pechac
Assignee: Mark Proctor
Fix For: 5.2.0.M2
Exception occures at:
org.drools.core.util.AbstractHashTable$HashTableIterator.next(AbstractHashTable.java:317)
in Drools 5.1.1 when calling insert() on just created StatefulKnowledgeSession.
I found similar issues reported for LeftTupleIndexHashTable, it had to do with
initializing row to -1 instead of 0 or something similar. I see that fixed in
Left/RightTupleIndexHashTable but it seems to me like it is still present in
AbstractHashTable.
The bug occures randomly (inserting the same data), usualy under load. The index is
either -1 or too high. I create multiple sessions in threads from one KnowledgeBase,
sessions are not shared. The sessions are relatively short living, about 100ms max.
Stack trace I got is:
java.lang.ArrayIndexOutOfBoundsException: 16
at
org.drools.core.util.AbstractHashTable$HashTableIterator.next(AbstractHashTable.java:317)
at org.drools.reteoo.EntryPointNode.updateSink(EntryPointNode.java:323)
at org.drools.reteoo.ObjectTypeNode.attach(ObjectTypeNode.java:303)
at
org.drools.reteoo.builder.PatternBuilder.attachObjectTypeNode(PatternBuilder.java:257)
at
org.drools.reteoo.ClassObjectTypeConf.<init>(ClassObjectTypeConf.java:92)
at
org.drools.common.ObjectTypeConfigurationRegistry.getObjectTypeConf(ObjectTypeConfigurationRegistry.java:68)
at
org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:981)
at
org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:917)
at
org.drools.impl.StatefulKnowledgeSessionImpl.insert(StatefulKnowledgeSessionImpl.java:251)
--
This message is automatically generated by JIRA.
For more information on JIRA, see: