Michael Beckerle created DAFFODIL-1985:
------------------------------------------
Summary: beforeState in sequences prevents streaming behavior in
I/O layer
Key: DAFFODIL-1985
URL: https://issues.apache.org/jira/browse/DAFFODIL-1985
Project: Daffodil
Issue Type: Bug
Components: Back End
Affects Versions: 2.2.0
Reporter: Michael Beckerle
Fix For: 2.2.0
The refactoring/rewrite of sequences used two saved states for arrays with
Points of uncertainty, a beforeState at the very start of the array, and a
priorState which the state prior to the current attempt to parse an occurrance.
In a code review it was observed that this beforeState prevents streaming by
holding onto the I/O layer mark state for the entire array.
Arguably, the beforeState is not only unnecessary, but incorrect. Arrays don't
need a PoU before the entire array that doesn't advance when occurrences are
found. If the array is determined to exist, because at least one occurrence
exists, then failure of the entire array causes the enclosing PoU to be
determined, not an artificial one created at the start of the array.
Remove beforeState to fix.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)