Define iterator-based decompressor behavior when shifting a long more than 64 bits

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Major - P3
    • 8.0.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage Execution
    • Fully Compatible
    • QI 2024-03-04
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Inputs that are just deltas without an uncompressed byte can lead to a bit shift that is higher than 64 for a long on this line. This is undefined behavior, but it is gracefully handled by the decompressor currently (an error is raised in the materializer), so no errors are occurring in production. However, the bson_column_validate_fuzzer is crashing. We should fix this issue explicitly.  The full output of the fuzzer is in the comments.

              Assignee:
              Gil Alon
              Reporter:
              Gil Alon
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: