Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-5385

Vector serializer fails to read saved SV2

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.8.0
    • Fix Version/s: 1.11.0
    • Component/s: None
    • Labels:

      Description

      Drill provides the VectorAccessibleSerializable class to write a record batch to a stream, and to read that batch from a stream. Record batches can carry an indirection vector (a so-called selection vector 2 or SV2).

      The code to write batches writes the SV2 to the stream. But, the code to deserialize batches initializes, but does not read, the SV2 from the stream.

      The result is that vector deserialization reads the wrong bytes and the saved values are corrupted on read.

      Note that this issue was found via unit testing. At present, the only production use of this code is in the external sort, which serializes batches without an indirection vector.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                paul-rogers Paul Rogers
                Reporter:
                paul-rogers Paul Rogers
                Reviewer:
                Boaz Ben-Zvi
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: