Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-18309

[Go] delta_bit_packing Decode may panic

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 9.0.0
    • 11.0.0
    • Go, Parquet
    • all release version

    Description

      https://github.com/apache/arrow/blob/master/go/parquet/internal/encoding/delta_bit_packing.go

      The  DeltaBitPackInt32 and DeltaBitPackInt64 Decode method did not use d.nvals subtract decoded number at end, which lead streaming decode panic. 

      Also, when copy the decoded value to out, the end value should be 
      shared_utils.MinInt(int(d.valsPerMini), start + len(out))

      When encode 68610 timestamp data, and decode 1024 value a batch, we encounter the panic

      Attachments

        1. @timestamp.data
          938 kB
          jun wang

        Issue Links

          Activity

            People

              zeroshade Matthew Topol
              lntotk jun wang
              Votes:
              0 Vote for this issue
              Watchers:
              3 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