Interesting... and great question! are you working with 5.5.0.Final,
5.5.1-SNAPSHOT / 5.6.0-SNAPSHOT or another version?
The KB lock/unlock event is, afaik, only fired when a thread acquires a
WRITE lock on a KB (e.g. to add or remove rules), while an insertion should
only acquire a READ lock, an event which is not fired.
If my understanding is correct, the container thread "http-8084-2" animates
the RuleRunner and spawns
a service thread - 2967417 - to do the actual insertion.
Between here:
13/05/08 20:07:16|http-8084-2|RuleRunner|INFO|createModel Request class
initialized!
and
13/05/08 20:07:16|2967417|RuleRunner|INFO|processRequest Insert into KB ...
that thread modifies the KB 4 times. Then, a fifth modification takes place
and AFTER that, eventually,
the exception manifests.
Possibilities:
- Are we missing an important part of the logs?
- Is the RuleRunner class doing things it shouldn't do, like re-adding the
rules to the KB?
My understanding is that the KnowledgeBaseAgentImpl is the one modifying the
(only)
instance of the KB, but that "createModel" is suspicious....
- Do any of your rules trigger a modification of the KB, so that we would
have a "callback" from
the fireallrules?
I guess that seeing the code of the RuleRunner might help...
--
View this message in context:
http://drools.46999.n3.nabble.com/threw-error-java-lang-ClassCastExceptio...
Sent from the Drools: User forum mailing list archive at
Nabble.com.