Uploaded image for project: 'Kudu'
  1. Kudu
  2. KUDU-1437

Negative values corruption for RLE-encoded INT32 columns

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • 0.6.0, 0.7.0, 0.8.0
    • 0.9.0
    • cfile
    • None

    Description

      Putting a sequence of negative values to INT32 RLE-encoded column corrupts the data after compaction.

      The exact recipe to reproduce it is following:

      1) Put a sequence of negative values in descending order to an INT32 RLE-encoded column (it's a primary key in my case, but maybe regular columns are affected as well)
      2) Wait for compaction
      3) See you data converted to -1's

      A Gist showing an example of data corruption is available here: https://gist.github.com/pmaciolek/dfc6a95ff85145d23774cb5d1a9f5a4f (based on sample.cc provided with Kudu sources, note that -std=c++11 might need to be added to the compiler flags)

      Attachments

        Activity

          People

            tlipcon Todd Lipcon
            przemur Przemyslaw Maciolek
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: