You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@daffodil.apache.org by "Steve Lawrence (Jira)" <ji...@apache.org> on 2023/02/02 14:41:00 UTC

[jira] [Created] (DAFFODIL-2781) OOLAG LV evaluated multiple times when there is a failure

Steve Lawrence created DAFFODIL-2781:
----------------------------------------

             Summary: OOLAG LV evaluated multiple times when there is a failure
                 Key: DAFFODIL-2781
                 URL: https://issues.apache.org/jira/browse/DAFFODIL-2781
             Project: Daffodil
          Issue Type: Bug
          Components: Back End
    Affects Versions: 3.4.0
            Reporter: Steve Lawrence


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.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)