-
Bug
-
Resolution: Done
-
Major
-
1.3.0
-
None
Sometimes a rule gets injected into the bytecode but transformation fails because of a later problem (n.b. this usually only happens because of an issue with unrelated code e.g. where a method contains a JSR). In this case a rule key is allocated and used to index the rule in the transformer's rule map. Map entries created during injection are normally recorded in the transform context attached to the rule script. Thsi allows them to be purged from the map when the script is unloaded.
When transformation fails a record of the failed transform is still attached to the script but this does not identify the rule, making it impossible to purge it. The rule should be purged at the point where the transform is added since there is no benefit keeping it around.