Uploaded image for project: 'Daffodil'
  1. Daffodil
  2. DAFFODIL-1843

Unparser bitOrder change and OVC (outputValueCalc) interaction

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.0.0
    • Fix Version/s: 2.1.0
    • Component/s: Back End, Unparsing
    • Labels:
      None

      Description

      See test test_bitOrderOVC1.

      This issue was discovered in the Link16 DFDL schema, and reproduced here in an isolated context.

      This test shows that a spurious Runtime SDE is detected due to a bitOrderChange. This has to do with the unparser having to back-up to fill in a suspension for an outputValueCalc element, and losing the bitOrder that should be maintained/captured for that usage.

      At least that's my theory.

      This test should work, but gets a Runtime SDE:

      edu.illinois.ncsa.daffodil.tdml.TDMLException: Runtime Schema Definition Error: Data output stream DOS(id=5, Active, Direct Absolute from 0 to 27 (length 27)) with bitOrder 'leastSignificantBitFirst' not on a byte boundary, cannot be populated from DOS(id=6, Finished, Buffered Absolute from 27 to 40 (length 13), data=1F000000000000000000000000000000 no following) with bitOrder 'mostSignificantBitFirst'.
      Schema context: NNN Location line 64 column 18 in file:/tmp/s1_9132734461290850031.dfdl.xsd
      Data location was preceding byte 3
      

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                dfthompson Dave Thompson
                Reporter:
                mbeckerle Michael Beckerle
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 0.5h
                  0.5h