Ok, lets start with a simple thing: 4128 instances <http://carrot.gaiam.com:7000/instances/0x2aaad6103ff0> of class org.drools.rule.Pattern <http://carrot.gaiam.com:7000/class/0x2aaad6103ff0>
I can't see how 16 rules can create that many patterns. Are you sure you are not recompiling/recreating your rulebase multiple times? If not, then we may have a serious problem... []s Edson 2008/11/26 Kris Nuttycombe <[EMAIL PROTECTED]> > Hi, all, > > I'm encountering significant problems with running out of memory when > executing a small ruleset (only 16 rules, < 100 facts). I've run jmap on the > process (which has previously spawned multiple stateless sessions in > parallel) and it looks like Drools, and specifically the Eclipse jdt > compiler, is seriously eating up memory. The code calling the is fairly > simple; one of the initial facts is an accumulator that I refer to later: > > StatelessSession session = ruleBase.newStatelessSession(); > session.execute(initialFact, accumulator); > > accumulator.doSomething(); > > where ruleBase is a shared instance, and initialFact is a base fact that is > expanded during rules processing. Is there something I should be doing to > dispose the session after use to release the objects created by the drools > compiler after use? I'm using a shared RuleBase, and I'm wondering whether > it is somehow keeping references around. Are these sorts of object counts to > be expected? > > Thanks, > > Kris > Instance Counts for All Classes (excluding platform) 104827 > instances<http://carrot.gaiam.com:7000/instances/0x2aaacf5646f8>of class > net.jxta.impl.document.LiteXMLElement$charRange<http://carrot.gaiam.com:7000/class/0x2aaacf5646f8> > 26806 instances <http://carrot.gaiam.com:7000/instances/0x2aaacf5631e8> of > class > net.jxta.impl.document.LiteXMLElement$tagRange<http://carrot.gaiam.com:7000/class/0x2aaacf5631e8> > 26733 instances <http://carrot.gaiam.com:7000/instances/0x2aaad66ea7f0> of > class > org.eclipse.jdt.internal.compiler.lookup.MethodBinding<http://carrot.gaiam.com:7000/class/0x2aaad66ea7f0> > 17366 instances <http://carrot.gaiam.com:7000/instances/0x2aaad66e3c88> of > class > [Lorg.eclipse.jdt.internal.compiler.lookup.TypeBinding;<http://carrot.gaiam.com:7000/class/0x2aaad66e3c88> > 12412 instances <http://carrot.gaiam.com:7000/instances/0x2aaacf032560> of > class > com.sun.enterprise.loader.EJBClassLoader$SentinelInputStream<http://carrot.gaiam.com:7000/class/0x2aaacf032560> > 10974 instances <http://carrot.gaiam.com:7000/instances/0x2aaad5504450> of > class > org.apache.commons.collections.SequencedHashMap$Entry<http://carrot.gaiam.com:7000/class/0x2aaad5504450> > 8683 instances <http://carrot.gaiam.com:7000/instances/0x2aaad68c3840> of > class > org.eclipse.jdt.internal.compiler.codegen.CachedIndexEntry<http://carrot.gaiam.com:7000/class/0x2aaad68c3840> > 7708 instances <http://carrot.gaiam.com:7000/instances/0x2aaacf55e9d8> of > class > net.jxta.impl.document.LiteXMLElement<http://carrot.gaiam.com:7000/class/0x2aaacf55e9d8> > 7450 instances <http://carrot.gaiam.com:7000/instances/0x2aaad5c4b6c0> of > class > org.hibernate.engine.CollectionKey<http://carrot.gaiam.com:7000/class/0x2aaad5c4b6c0> > 6836 instances <http://carrot.gaiam.com:7000/instances/0x2aaaced3c3f8> of > class > org.netbeans.modules.schema2beans.AttrProp<http://carrot.gaiam.com:7000/class/0x2aaaced3c3f8> > 6271 instances <http://carrot.gaiam.com:7000/instances/0x2aaad6642d18> of > class > org.eclipse.jdt.internal.compiler.lookup.FieldBinding<http://carrot.gaiam.com:7000/class/0x2aaad6642d18> > 5643 instances <http://carrot.gaiam.com:7000/instances/0x2aaad6796890> of > class > org.eclipse.jdt.internal.compiler.ast.MessageSend<http://carrot.gaiam.com:7000/class/0x2aaad6796890> > 4928 instances <http://carrot.gaiam.com:7000/instances/0x2aaad68a6018> of > class > org.eclipse.jdt.internal.compiler.util.HashtableOfObject<http://carrot.gaiam.com:7000/class/0x2aaad68a6018> > 4895 instances <http://carrot.gaiam.com:7000/instances/0x2aaad66e3fa8> of > class > [Lorg.eclipse.jdt.internal.compiler.lookup.ReferenceBinding;<http://carrot.gaiam.com:7000/class/0x2aaad66e3fa8> > 4546 instances <http://carrot.gaiam.com:7000/instances/0x2aaad669f968> of > class > org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding<http://carrot.gaiam.com:7000/class/0x2aaad669f968> > 4472 instances <http://carrot.gaiam.com:7000/instances/0x2aaad687a0a8> of > class > [Lorg.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding;<http://carrot.gaiam.com:7000/class/0x2aaad687a0a8> > 4128 instances <http://carrot.gaiam.com:7000/instances/0x2aaad6103ff0> of > class > org.drools.rule.Pattern<http://carrot.gaiam.com:7000/class/0x2aaad6103ff0> > 3899 instances <http://carrot.gaiam.com:7000/instances/0x2aaacf493c90> of > class > net.jxta.impl.id.UUID.UUID<http://carrot.gaiam.com:7000/class/0x2aaacf493c90> > 3867 instances <http://carrot.gaiam.com:7000/instances/0x2aaad5c416c0> of > class > org.hibernate.engine.EntityEntry<http://carrot.gaiam.com:7000/class/0x2aaad5c416c0> > 3731 instances <http://carrot.gaiam.com:7000/instances/0x2aaad5c54d88> of > class > org.hibernate.collection.PersistentSet<http://carrot.gaiam.com:7000/class/0x2aaad5c54d88> > 3685 instances <http://carrot.gaiam.com:7000/instances/0x2aaad66ca420> of > class > org.eclipse.jdt.internal.compiler.lookup.UnresolvedReferenceBinding<http://carrot.gaiam.com:7000/class/0x2aaad66ca420> > 3360 instances <http://carrot.gaiam.com:7000/instances/0x2aaad6c12770> of > class > org.drools.reteoo.SingleTupleSinkAdapter<http://carrot.gaiam.com:7000/class/0x2aaad6c12770> > 3266 instances <http://carrot.gaiam.com:7000/instances/0x2aaacf543dc0> of > class > net.jxta.document.MimeMediaType<http://carrot.gaiam.com:7000/class/0x2aaacf543dc0> > 3264 instances <http://carrot.gaiam.com:7000/instances/0x2aaad6370288> of > class > org.drools.spi.PatternExtractor<http://carrot.gaiam.com:7000/class/0x2aaad6370288> > 3163 instances <http://carrot.gaiam.com:7000/instances/0x2aaad5f8b990> of > class > org.apache.axis.encoding.TypeMappingImpl$Pair<http://carrot.gaiam.com:7000/class/0x2aaad5f8b990> > 3137 instances <http://carrot.gaiam.com:7000/instances/0x2aaad5caad98> of > class > org.hibernate.collection.PersistentBag<http://carrot.gaiam.com:7000/class/0x2aaad5caad98> > 2881 instances <http://carrot.gaiam.com:7000/instances/0x2aaad681b000> of > class > org.eclipse.jdt.internal.compiler.lookup.MethodScope<http://carrot.gaiam.com:7000/class/0x2aaad681b000> > 2688 instances <http://carrot.gaiam.com:7000/instances/0x2aaad6161860> of > class > org.drools.base.ClassFieldExtractor<http://carrot.gaiam.com:7000/class/0x2aaad6161860> > > _______________________________________________ > rules-users mailing list > [email protected] > https://lists.jboss.org/mailman/listinfo/rules-users > > -- Edson Tirelli JBoss Drools Core Development JBoss, a division of Red Hat @ www.jboss.com
_______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users
