Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.1.1, 3.0
-
None
Description
When JEXL is used in non-strict mode it silently ignores unknown variables. However it still constructs a JexlException.Variable exception, even though it doesn't throw it.
Constructing exceptions in Java is expensive. If you happen to have a situation where unknown variables are common then this becomes a performance problem. It is showing up as an issue in our application.
Inspecting the source of Interpreter it looks like a similar issue could also occur with a number of the other exceptions. They are always created, even if they are not going to be thrown.