Todd Lipcon created KUDU-2085:
---------------------------------

             Summary: Seek past last element of a prefix-encoded binary block 
may crash
                 Key: KUDU-2085
                 URL: https://issues.apache.org/jira/browse/KUDU-2085
             Project: Kudu
          Issue Type: Bug
          Components: cfile
    Affects Versions: 1.4.0, 1.3.1, 1.2.0, 1.1.0, 1.0.1
            Reporter: Todd Lipcon
            Assignee: Todd Lipcon
            Priority: Critical


Similar to  KUDU-2049, the binary prefix block encoder has a bug when seeking 
past the end of the block (i.e to the offset past the last element). The bug 
only causes issues in very specific circumstances:

- the number of elements in the block has to be a multiple of 16 (the "restart 
interval")
-- this causes the code to interpret the "restart count" at the end of the 
block data as an offset instead of part of the footer.
- this value, when interpreted as an offset, points to a piece of data in the 
block which, when interpreted as a varint, ends up large enough to point past 
the end of the block.

This results in an error like:
F0730 09:56:07.291882 124055 binary_prefix_block.cc:325] Check failed: _s.ok() 
Bad status: Corruption: Could not decode value length data at idx 32



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to