-
Notifications
You must be signed in to change notification settings - Fork 3.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
colexec: fix cfetcher with interleaved tables with NULL in key #47035
Conversation
I don't like that we have to iterate over all the columns here when we skip a k/v due to it being interleaved. I think instead when we actually decode the k/v into values we should reset the null before decoding the key, so that previous null writes don't shadow the decoded value. |
37583e9
to
0104810
Compare
Good point, updated. |
❌ The GitHub CI (Cockroach) build has failed on 01048105. 🦉 Hoot! I am a Blathers, a bot for CockroachDB. I am experimental - my owner is otan. |
Previously `cFetcher` could decode an interleaved table's `NULL` value which would set the NULL in the corresponding column vector but would not unset the null while it should have. Release note (bug fix): Previously, CockroachDB could incorrectly consider non-NULL value from an interleaved parent table to be NULL when the interleaved child has NULL value in the row with the corresponding index key, and now this has been fixed.
0104810
to
732f92d
Compare
TFTR! bors r+ |
❌ The GitHub CI (Cockroach) build has failed on 732f92d8. 🦉 Hoot! I am a Blathers, a bot for CockroachDB. I am experimental - my owner is otan. |
bors r+ |
Build succeeded |
Previously
cFetcher
could decode an interleaved table'sNULL
valuewhich would set the NULL in the corresponding column vector but would
not unset the null while it should have.
Fixes: #47029.
Release note (bug fix): Previously, CockroachDB could incorrectly
consider non-NULL value from an interleaved parent table to be NULL when
the interleaved child has NULL value in the row with the corresponding
index key, and now this has been fixed.