Details
-
Bug
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
3.4.0
-
None
-
None
Description
In debugging DAFFODIL-2393, where an DFDL expression results in a path past root error SDE, I've found that it is attempting to compile my same invalid expression multiple times.
Looking at the trace of when the expression is compiled, it looks like the same OOLAG LV is getting evaluated multiple times, each time when it is used by another OOLAG LVs. I think what is happening is this LV fails, so never has a value. When another LV accesses it, it is reevaluated because it doesn't have a value. Instead, we may want to have OOLAG capture exceptions and rethrow them if we attempt to reevaluate it again.
This is maybe not a big deal since it only happens in the case when there are errors, but fixing this might make errors available quicker, and also might make debugging issues like this easier since there's no confusing about duplication.