fuzzer: Adds an API to the vector fuzzer to corrupt data buffers for null rows #15405
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary:
This change introduces logic to deliberately corrupt the underlying
data for row indices that are marked as null in a vector. For
FlatVectors, the values buffer is corrupted at these null positions,
for Array and Map Vectors, the offsets and sizes are affected; and
for DictionaryVectors, the indices buffer is corrupted. For Constant
and RowVectors, this operation is a no-op. The purpose of this is to
generate test cases that ensure code correctly ignores data at null
positions, rather than relying on the assumption that the underlying
values are valid.
Differential Revision: D86273473