[JBoss JIRA] Created: (JBRULES-2762) ArrayIndexOutOfBoundsException in org.drools.core.util.AbstractHashTable
by Lubos Pechac (JIRA)
ArrayIndexOutOfBoundsException in org.drools.core.util.AbstractHashTable
------------------------------------------------------------------------
Key: JBRULES-2762
URL: https://jira.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
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.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 8 months
[JBoss JIRA] Created: (JBAS-8587) Error during shutdown
by Stefano Maestri (JIRA)
Error during shutdown
---------------------
Key: JBAS-8587
URL: https://jira.jboss.org/browse/JBAS-8587
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public (Everyone can see)
Affects Versions: 7.0.0.Alpha1
Reporter: Stefano Maestri
Assignee: Brian Stansberry
I'm getting this stack trace time to time during server shutdown (both domain and standalone)
[Server:server-two] 21:30:17,768 WARN [org.jboss.messaging] (pool-1-thread-4) failed to destroy jms topic: testTopic: javax.naming.NameNotFoundException: Name 'topic' not found in context ''
[Server:server-two] at org.jboss.as.naming.util.NamingUtils.nameNotFoundException(NamingUtils.java:66)
[Server:server-two] at org.jboss.as.naming.InMemoryNamingStore$NodeTraversingVisitor.visit(InMemoryNamingStore.java:355)
[Server:server-two] at org.jboss.as.naming.InMemoryNamingStore$ContextNode.accept(InMemoryNamingStore.java:311)
[Server:server-two] at org.jboss.as.naming.InMemoryNamingStore.unbind(InMemoryNamingStore.java:138)
[Server:server-two] at org.jboss.as.naming.NamingContext.unbind(NamingContext.java:257)
[Server:server-two] at org.jboss.as.naming.NamingContext.unbind(NamingContext.java:266)
[Server:server-two] at javax.naming.InitialContext.unbind(InitialContext.java:433) [:1.6.0_18]
[Server:server-two] at org.hornetq.jms.server.impl.JMSServerManagerImpl.removeFromJNDI(JMSServerManagerImpl.java:1630)
[Server:server-two] at org.hornetq.jms.server.impl.JMSServerManagerImpl.destroyTopic(JMSServerManagerImpl.java:644)
[Server:server-two] at org.jboss.as.messaging.jms.JMSTopicService.stop(JMSTopicService.java:64)
[Server:server-two] at org.jboss.msc.service.ServiceControllerImpl$StopTask.run(ServiceControllerImpl.java:983)
[Server:server-two] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [:1.6.0_18]
[Server:server-two] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [:1.6.0_18]
[Server:server-two] at java.lang.Thread.run(Thread.java:636) [:1.6.0_18]
[Server:server-two]
[Server:server-three] 21:30:17,774 INFO [org.jboss.as.deployment] (pool-1-thread-4) Undeployed jdbc-local.rar
[Server:server-three] 21:30:17,774 INFO [org.jboss.as.deployment] (pool-1-thread-4) Undeployed jdbc-xa.rar
[Server:server-one] 21:30:17,766 WARN [org.jboss.messaging] (pool-1-thread-4) failed to destroy jms topic: testTopic: javax.naming.NameNotFoundException: Name 'topic' not found in context ''
[Server:server-one] at org.jboss.as.naming.util.NamingUtils.nameNotFoundException(NamingUtils.java:66)
[Server:server-one] at org.jboss.as.naming.InMemoryNamingStore$NodeTraversingVisitor.visit(InMemoryNamingStore.java:355)
[Server:server-one] at org.jboss.as.naming.InMemoryNamingStore$ContextNode.accept(InMemoryNamingStore.java:311)
[Server:server-one] at org.jboss.as.naming.InMemoryNamingStore.unbind(InMemoryNamingStore.java:138)
[Server:server-one] at org.jboss.as.naming.NamingContext.unbind(NamingContext.java:257)
[Server:server-one] at org.jboss.as.naming.NamingContext.unbind(NamingContext.java:266)
[Server:server-one] at javax.naming.InitialContext.unbind(InitialContext.java:433) [:1.6.0_18]
[Server:server-one] at org.hornetq.jms.server.impl.JMSServerManagerImpl.removeFromJNDI(JMSServerManagerImpl.java:1630)
[Server:server-one] at org.hornetq.jms.server.impl.JMSServerManagerImpl.destroyTopic(JMSServerManagerImpl.java:644)
[Server:server-one] at org.jboss.as.messaging.jms.JMSTopicService.stop(JMSTopicService.java:64)
[Server:server-one] at org.jboss.msc.service.ServiceControllerImpl$StopTask.run(ServiceControllerImpl.java:983)
[Server:server-one] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [:1.6.0_18]
[Server:server-one] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [:1.6.0_18]
[Server:server-one] at java.lang.Thread.run(Thread.java:636) [:1.6.0_18]
[Server:server-one]
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 8 months
[JBoss JIRA] Created: (JBRULES-2771) NPE in update call from wrong WM Entry Point
by Wolfgang Laun (JIRA)
NPE in update call from wrong WM Entry Point
--------------------------------------------
Key: JBRULES-2771
URL: https://jira.jboss.org/browse/JBRULES-2771
Project: Drools
Issue Type: Bug
Security Level: Public (Everyone can see)
Affects Versions: 5.1.1.FINAL
Reporter: Wolfgang Laun
Assignee: Mark Proctor
Fix For: 5.2.0.M1
This sequence of statements disagrees with the documentation:
WorkingMemoryEntryPoint entryPoint = kSession.getWorkingMemoryEntryPoint( "epn" );
FactHandle fh = entryPoint.insert( fact );
kSession.update( fh, fact ); // should be done using entryPoint.update
But this causes (in 5.1.1) a NPE
Exception in thread "main" java.lang.NullPointerException
at org.drools.common.AbstractWorkingMemory.update(AbstractWorkingMemory.java:1379)
at org.drools.common.AbstractWorkingMemory.update(AbstractWorkingMemory.java:1338)
at org.drools.impl.StatefulKnowledgeSessionImpl.update(StatefulKnowledgeSessionImpl.java:266)
at event.Main.execute(Main.java:153)
at event.Main.main(Main.java:164)
This is the line:
if ( this.maintainTms ) {
status = ((InternalFactHandle) factHandle).getEqualityKey().getStatus();
}
and similar code can be found in trunk, so I suppose this is still possible.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 8 months
[JBoss JIRA] Created: (JBRULES-2870) Option to bypass the package authentication in rule agent
by Jian Zhi (JIRA)
Option to bypass the package authentication in rule agent
---------------------------------------------------------
Key: JBRULES-2870
URL: https://issues.jboss.org/browse/JBRULES-2870
Project: Drools
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Components: drools-core
Affects Versions: 5.1.1.FINAL
Reporter: Jian Zhi
Assignee: Mark Proctor
GUVNOR-133 (Rules Agent provides access to all users' rules without authentication) added a new feature to authenticate the user in Rule agent. We would like to have this function as an optional feature. When we evaluate the rule in the application we would like to turn off the authentication, so at the runtime the user authentication is bypassed when the package is fetched through URL.
In 5.1.1 release we got IO Exception when RuleAgent.ENABLE_BASIC_AUTHENTICATION is set to false.
java.io.IOException: Server returned HTTP response code: 401 for URL: http://localhost:8080/drools-guvnor/org.drools.guvnor.Guvnor/package/XXX/...
14:23:04,941 ERROR [STDERR] at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1313)
14:23:04,941 ERROR [STDERR] at org.drools.agent.HttpClientImpl.fetchPackage(HttpClientImpl.java:77)
14:23:04,941 ERROR [STDERR] at org.drools.agent.URLScanner.readPackage(URLScanner.java:171)
14:23:04,942 ERROR [STDERR] at org.drools.agent.URLScanner.getChangeSet(URLScanner.java:143)
14:23:04,942 ERROR [STDERR] at org.drools.agent.URLScanner.loadPackageChanges(URLScanner.java:119)
14:23:04,942 ERROR [STDERR] at org.drools.agent.RuleAgent.checkForChanges(RuleAgent.java:429)
14:23:04,942 ERROR [STDERR] at org.drools.agent.RuleAgent.refreshRuleBase(RuleAgent.java:381)
14:23:04,942 ERROR [STDERR] at org.drools.agent.RuleAgent.configure(RuleAgent.java:366)
14:23:04,942 ERROR [STDERR] at org.drools.agent.RuleAgent.init(RuleAgent.java:266)
14:23:04,942 ERROR [STDERR] at org.drools.agent.RuleAgent.newRuleAgent(RuleAgent.java:206)
14:23:04,942 ERROR [STDERR] at org.drools.agent.RuleAgent.newRuleAgent(RuleAgent.java:166)
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 8 months
[JBoss JIRA] Created: (JBRULES-2852) SingleThreadedObjectStore.isEmpty() implementation returns true when objects are in store
by Radai Rosenblatt (JIRA)
SingleThreadedObjectStore.isEmpty() implementation returns true when objects are in store
-----------------------------------------------------------------------------------------
Key: JBRULES-2852
URL: https://issues.jboss.org/browse/JBRULES-2852
Project: Drools
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: drools-core
Affects Versions: 5.1.1.FINAL
Reporter: Radai Rosenblatt
Assignee: Mark Proctor
SingleThreadedObjectStore, line 88:
public boolean isEmpty() {
return this.assertMap != null;
}
i dont understand the logic here, but with a store with a single object (both assertmap and identitymap are non-null) this returns true, while there are values that can be iterated. this means that for an entry point using this store, isEmpty() returns true while toArray() returns a non-empty array ...
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 8 months
[JBoss JIRA] Created: (JBRULES-2841) BinaryHeapQueueAgendaGroup fails to return top salience item
by k s (JIRA)
BinaryHeapQueueAgendaGroup fails to return top salience item
------------------------------------------------------------
Key: JBRULES-2841
URL: https://issues.jboss.org/browse/JBRULES-2841
Project: Drools
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: drools-core
Affects Versions: 5.1.1.FINAL
Reporter: k s
Assignee: Mark Proctor
We have come across a case where the rules engine does not fire the top priority (top salience) rule. After a lot of careful debugging, it seems that the BinaryHeapQueueAgendaGroup implementation (and most likely the supporting BinaryHeapQueue) has a bug. It is not a common case and it was hard to reproduce. We have put together a junit test to show the problem. The test "replays" the trace from the case where we show the error (sparing you from all the complexity of the actual rules and produced it). I will attach the JUnit test and the trace file that drives the test.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 8 months