4 times kb unlock/unlock is due to 4 objects inserted into session. After
5th insert it crashes. 5 objects are always inserted into session before
fireAllRules is invoked. It does'nt crash if no rule is added/updated.
RuleRunner inserts them - 5th object is the actual model object against
which all rules are run
http-8084-2 and 2967417 are same; i just rename thread once I've serialized
the model object to take the id.
I've noticed that the four times lock/unlock happens immediately after KB is
modified (ie. rule is removed and added).
General flow of RuleRunner is ...
read xml payload from HttpServletRequest
create model object from xml
set thread name to model.id
get lock on kba (kba is my wrapper class to control access to kb)
get stateful session
session.insert( obj1 )
session.insert( obj2 )
session.insert( obj3 )
session.insert( obj4 )
fact_handle = session.insert( model )
iterate through a list of agenda and set focus to agenda
retract fact_handle from session
release lock on kba
View this message in context:
Sent from the Drools: User forum mailing list archive at Nabble.com