Details
-
Bug
-
Resolution: Done
-
Blocker
-
5.4.0.Final
-
None
Description
The issue arises when a KnowledgeBuilder is initialized with a KnowledgeBase for incremental building.
Notice that this is what happens when a KnowledgeAgent is created setting the "useKBaseClassLoaderForCompiling" option.
The Kbuilder's PackageBuilder (~ line #1190) creates/gets a Package from the Rulebase, effectively adding the compilation results to the rulebase.
However, AbstractRuleBase.addPackages (~ line #510) is called before the packageDescr is really compiled, so the kbuilder's additions are not correct (the rewiring done by addPackages is not performed) and the package(s) generated by the packagebuilder must be readded to the rulebase.
However, the compiled resources (e.g. declared types) are not rewired properly, so the class mismatch between the ones used for compilation and
the ones used for runtime will prevent rules from firing.
This might potentially be related to JBRULES-3543 and JBRULES-2962 (under investigation)