-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
101800: copy: fix copy partial index handling r=cucaroach a=cucaroach Copy partial index handling in the new vector encoder was broken and failing but we didn't know it because the copy-from-kvtrace test command was ignoring errors (the trace was still happening but we ignored the "empty kv" error from KV). Now copy-from-kvtrace errors if the copy errors and in order to fix the underlying problem kvSparseSliceBulkIterator ACTUALLY supports sparse slices meaning it skips over empty keys. We went back and forth on where/who should do this sparse skipping and somehow it got dropped and the tests designed to flex didn't catch it because of the above error. In the real world the ramifications of this would be that COPY's into tables with partial indexes would just always fail if any rows were filtered out. This could be worked around in betas by disabling the vectorized implementation of COPY. The only reason we caught this is due to metamorphic testing that would sometimes send the 3 rows in two batches and the kvtrace the test would see wouldn't have the 3rd row because the inserter bailed on the error. Yeah for metamorphic testing! Epic: none Release note: none Fixes: #101609 Co-authored-by: Tommy Reilly <[email protected]>
- Loading branch information
Showing
3 changed files
with
29 additions
and
18 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters