-
Type: Improvement
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage Execution
-
Fully Compatible
-
QI 2024-02-19, QI 2024-03-04
-
148
SERVER-85343 updated libfuzzer restrictions, and now we are seeing an error that crashes the bson_column_validate_fuzzer. The bad input contains only deltas without a control uncompressed element before the deltas. This will pass validation but when we try and decompress the column we will enter this conditional without initializing the member variables of the struct, so deltaOfDelta will be any value in memory and not a boolean. However, this won't crash the server or lead to memory issues. If deltaOfDelta is true (any value that is not 0) the decoding loop will enter the materializer which will throw an error (invalid BSON encoding). If deltaOfDelta is false at this time, we will return the lastValue and return missing. But we should decide on the behavior we want. This is also necessary for the fuzzers to pass.
- is depended on by
-
SERVER-85750 Add BSONColumnBuilder fill constructor for skips
- Backlog
-
SERVER-85177 Create libfuzzer that compares block-based decompressor interface with iterator implementation
- Closed
- is duplicated by
-
SERVER-86594 Use of unitialized bool d64.deltaOfDelta in loadDelta()
- Closed