"Corrupted Negcnt" errors imply an internal error in the Rete network. A long time ago, we'd occasionally see these and they'd signal Jess bugs. Nowadays, when they surface, they often mean that the user has done something to corrupt Jess's internal state.
Try to produce the smallest possible, complete, ready-to-run program you can that reproduces this error, and send it along to me, and I'll have a look. I think Waldek Jaronski wrote: > Hi Ernest, > I was using version 6.0 12/7/2001. Now, I have upgraded to 6.1a4 8/30/2002, > but I can't test it against my problem since sooner I get the error in > routine NodeNot2.RunTestsVaryLeft with the message Corrupted Negcnt (< 0). > This error does not appear in version 6.0. > > It happens when I try to define the query. In this case it takes place when > Jess executes a user function (retract-need-facts) but it does not actually > matter: > > (defquery PERSONALITY_PROBLEMS::search_need_facts_to_retract > "Finds need-XXX facts with the given head and slot value other than nil > for retraction." > (PERSONALITY_PROBLEMS::need-personality_problems (troubling ?s1 &: (neq > ?s1 nil))) > ) > > Do you have any idea how we can circumvent it? > Thanks in advance, > Waldek > > The error details are: > > Jess reported an error in routine NodeNot2.RunTestsVaryLeft > while executing rule LHS (Node2) > while executing rule LHS (Node2) > while executing rule LHS (Node2) > while executing rule LHS (TEQ) > while executing rule LHS (TECT) > while executing (retract-need-facts > PERSONALITY_PROBLEMS::need-personality_problems troubling). > Message: Corrupted Negcnt (< 0) . > Program text: at line 1. > at jess.NodeNot2.doRunTestsVaryLeft(NodeNot2.java:146) > at jess.NodeNot2.doRunTestsVaryLeft(NodeNot2.java:108) > at jess.Node2.runTestsVaryLeft(Node2.java:382) > at jess.Node2.callNodeRight(Node2.java:245) > at jess.Node1LTR.passAlong(Node1LTR.java:26) > at jess.Node1LTR.callNodeLeft(Node1LTR.java:15) > at jess.NodeTest.passAlong(NodeTest.java:212) > at jess.NodeNot2.doRunTestsVaryLeft(NodeNot2.java:131) > at jess.NodeNot2.doRunTestsVaryLeft(NodeNot2.java:108) > at jess.Node2.runTestsVaryLeft(Node2.java:382) > at jess.Node2.callNodeRight(Node2.java:240) > at jess.Node1LTR.passAlong(Node1LTR.java:26) > at jess.Node1LTR.callNodeLeft(Node1LTR.java:15) > at jess.NodeTest.passAlong(NodeTest.java:212) > at jess.Node2.doRunTestsVaryLeft(Node2.java:418) > at jess.Node2.doRunTestsVaryLeft(Node2.java:392) > at jess.Node2.runTestsVaryLeft(Node2.java:382) > at jess.Node2.callNodeRight(Node2.java:240) > at jess.Node1.passAlong(Node1.java:60) > at jess.Node1TEQ.callNodeRight(Node1TEQ.java:46) > at jess.Node1.passAlong(Node1.java:60) > at jess.Node1TECT.callNodeRight(Node1TECT.java:43) > at jess.Rete.updateNodes(Rete.java:900) > at jess.ReteCompiler.addRule(ReteCompiler.java:67) > at jess.Rete.addDefrule(Rete.java:717) > at jess.Jesp.addAQuery(Jesp.java:1475) > at jess.Jesp.parseDefquery(Jesp.java:1440) > at jess.Jesp.parseSexp(Jesp.java:159) > at jess.Jesp.parse(Jesp.java:67) > at jess.Rete.executeCommand(Rete.java:1270) > at jess.Rete.executeCommand(Rete.java:1254) > at demovesalius.RetractNeedFacts.call(RetractNeedFacts.java:35) > at jess.FunctionHolder.call(FunctionHolder.java:37) > at jess.Funcall.execute(Funcall.java:270) > at jess.Jesp.parseAndExecuteFuncall(Jesp.java:1584) > at jess.Jesp.parseSexp(Jesp.java:180) > at jess.Jesp.parse(Jesp.java:67) > at jess.Rete.executeCommand(Rete.java:1270) > at jess.Rete.executeCommand(Rete.java:1254) > at demovesalius.DemoVesaliusApp.processAnswer(DemoVesaliusApp.java:408) > at > demovesalius.DemoVesaliusApp.buttonOK_actionPerformed(DemoVesaliusApp.java:1 > 73) > at demovesalius.DemoVesaliusApp$2.actionPerformed(DemoVesaliusApp.java:114) > at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1767) > at > javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButto > n.java:1820) > at > javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:4 > 19) > at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:257) > at > javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener > .java:258) > at java.awt.Component.processMouseEvent(Component.java:5021) > at java.awt.Component.processEvent(Component.java:4818) > at java.awt.Container.processEvent(Container.java:1380) > at java.awt.Component.dispatchEventImpl(Component.java:3526) > at java.awt.Container.dispatchEventImpl(Container.java:1437) > at java.awt.Component.dispatchEvent(Component.java:3367) > at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3214) > at java.awt.LightweightDispatcher.processMouseEvent(Container.java:2929) > at java.awt.LightweightDispatcher.dispatchEvent(Container.java:2859) > at java.awt.Container.dispatchEventImpl(Container.java:1423) > at java.awt.Window.dispatchEventImpl(Window.java:1566) > at java.awt.Component.dispatchEvent(Component.java:3367) > at java.awt.EventQueue.dispatchEvent(EventQueue.java:445) > at > java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.ja > va:190) > at > java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java > :144) > at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138) > at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:130) > at java.awt.EventDispatchThread.run(EventDispatchThread.java:98) > > -------------------------------------------------------------------- > To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]' > in the BODY of a message to [EMAIL PROTECTED], NOT to the list > (use your own address!) List problems? Notify [EMAIL PROTECTED] > -------------------------------------------------------------------- > --------------------------------------------------------- Ernest Friedman-Hill Distributed Systems Research Phone: (925) 294-2154 Sandia National Labs FAX: (925) 294-2234 Org. 8920, MS 9012 [EMAIL PROTECTED] PO Box 969 http://herzberg.ca.sandia.gov Livermore, CA 94550 -------------------------------------------------------------------- To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]' in the BODY of a message to [EMAIL PROTECTED], NOT to the list (use your own address!) List problems? Notify [EMAIL PROTECTED] --------------------------------------------------------------------
