[rules-users] Stateless session in drools server keeping classes around?

dunnlow dunnlow at yahoo.com
Tue Dec 13 14:05:28 EST 2011


Hi, I'm using drolls 5.3 server with one rule in a _stateless_ session.  I am
sending a POJO to the server, having it check a few attributes, modify the
attributes of the bean as needed then return the result.  I have this
working and get back an execution results object like I need.  

The problem is that when I send the batch execution command to the server a
number of classes stick around with each call (as shown in jconsole). 
Memory grows with each call until I run out.  (I see garbage collection
taking place so that doesnt seem to be the problem - and if I stop sending
events to the server, the memory is never returned).

I figured with a stateless session I wouldnt need to worry about this,
anyone have thoughts about why this is happening?  I am trying to do this
quickly, and don't want to call dispose/retract (the whole reason I'm using
stateless).

knowledge-services.xml:
  <drools:ksession id="ksession1" type="stateless" kbase="kbase1"
node="node1"/>

my code that builds the command:
  list cmds = new arraylist
  InsertObjectCommand icmd = CommandFactory.newInsert(myBean)
  icmd.setOutIdentifier("inserter")
  icmd.setEntryPoint("DEFAULT")
  cmds.add(icmd)
  FileAllRulesCommand farc = new FileAllRulesCommand()
  cmds.add(fileAllRulesCommand)
  BatchExecutionCommand command =
CommandFactory.newBatchExecution(cmds,"ksession1")
  ..

As an aside, I also looked into setting the sequential mode to true to see
if that helps, but am still trying to figure out how to configure that via
Spring.

Thanks for any insight,
-j

--
View this message in context: http://drools.46999.n3.nabble.com/Stateless-session-in-drools-server-keeping-classes-around-tp3583282p3583282.html
Sent from the Drools: User forum mailing list archive at Nabble.com.



More information about the rules-users mailing list