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

Streaming parser: Need to stream input data in, and infoset out to handle arbitrarily large data.

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • s13
    • 3.0.0
    • Performance
    • None

    Description

      Currently Daffodil requires that all incoming data fit in one java.nio.ByteBuffer. A separate issue (DFDL-881) is about allowing > 4GB files, but data sizes would still be limited by available address space.

      A streaming approach has great advantages. It requires that the input can be streamed in (e.g., from a java.io.InputStream), but also requires that the DFDL Infoset can be streamed out. (Think SAX parser 'events' coming out). This is complicated by the DFDL notion of points of uncertainty. E.g., until a choice branch has been resolved none of the elements on any branch can be emitted since "backtracking" may invalidate them.

      Attachments

        Issue Links

          Activity

            People

              slawrence Steve Lawrence
              mbeckerle Mike Beckerle
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: