[rules-users] Problem with shadow facts in trunk

Dirk Bergstrom dirk at juniper.net
Wed Mar 14 01:50:46 EDT 2007


I'm using trunk (revision 10170), and I'm getting an error while asserting
objects.  It looks to be reproducible, in that it only happens with particular
instances of one class.  But since it's in a method of a generated class (the
shadow proxy), I don't have a clue how to debug it.  I had a look at the
buildHashCode method in ShadowProxyFactory, but the magic was too thick for me.
 If it helps, the class being shadowed has boolean, float and long attributes,
but no char, short, int, double or list.

Here's the stacktrace:

Exception in thread "RLIs Processor" java.lang.IncompatibleClassChangeError
	at net.juniper.dash.data.RLIRecordShadowProxy.hashCode(Unknown Source)
	at java.util.HashMap.put(HashMap.java:418)
	at java.util.HashSet.add(HashSet.java:194)
	at org.drools.reteoo.CollectNode.assertTuple(CollectNode.java:135)
	at org.drools.reteoo.CollectNode.assertObject(CollectNode.java:212)
	at
org.drools.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:20)
	at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:145)
	at
org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:304)
	at org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:176)
	at org.drools.reteoo.Rete.assertObject(Rete.java:121)
	at org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:196)
	at
org.drools.reteoo.ReteooWorkingMemory.doAssertObject(ReteooWorkingMemory.java:68)
	at
org.drools.common.AbstractWorkingMemory.assertObject(AbstractWorkingMemory.java:729)
	at
org.drools.common.AbstractWorkingMemory.assertObject(AbstractWorkingMemory.java:548)

-- 
Dirk Bergstrom               dirk at juniper.net
_____________________________________________
Juniper Networks Inc.,          Computer Geek
Tel: 408.745.3182           Fax: 408.745.8905




More information about the rules-users mailing list