Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-6594

UnsignedInt128 addition does not increase internal int array count resulting in corrupted values during serialization

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.13.0
    • 0.13.0, 0.14.0
    • Query Processor
    • None

    Description

      Discovered this while investigating why my fix for HIVE-6222 produced diffs. I discovered that Decimal128.addDestructive does not adjust the internal count when an the number of relevant ints increases. Since this count is used in the fast HiveDecimalWriter conversion code, the results are off.

      The root cause is UnsignedDecimal128.differenceInternal does not do an updateCount() on the result.

      Attachments

        1. HIVE-6594.2.patch
          4 kB
          Remus Rusanu
        2. HIVE-6594.1.patch
          2 kB
          Remus Rusanu

        Activity

          People

            rusanu Remus Rusanu
            rusanu Remus Rusanu
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: