In the evaluation of functions an error is singalized by a FunctionProcessingException. This means if an error occurs a FunctionProcessingException is thrown that traverses the whole stacktrace up to the place where it is caught and and INDETERMINADTE is returned.
The problem is that this exception fills in the stracktrace (fillInStacktrace) and that is an expensive operation.
Change the fillInStacktrace method so that it does nothing by default. Add a possibility (e.g. through an Initializer) to enable the fillInStacktrace, e.g. for debugging purposes.
It can be thoguht of that the PDP can be put into DEV_MODE.
Additionaly in the functions a "logger.debug"-should be added to print the exception when an error occurs.