Skip to content

Conversation

@KKould
Copy link
Member

@KKould KKould commented Jan 10, 2026

What problem does this PR solve?

By checking whether the index being used overrides the columns output by the Scan, if so, the required values ​​are returned only from the index itself, avoiding table lookups.

fix: where is_null scanned extra data during indexing.

What is changed and how it works?

When performing an index_lookup in CoveredIndexImpl, the value portion of the key is parsed, deserialized, and assembled into a tuple for return.

The is_null key lookup is implemented by marking null values ​​before the value to distinguish whether a value is null.

Code changes

  • Has Rust code change
  • Has CI related scripts change

Check List

Tests

  • Unit test
  • Integration test
  • Manual test (add detailed scripts or steps below)
  • No code

Side effects

  • Performance regression: Consumes more CPU
  • Performance regression: Consumes more Memory
  • Breaking backward compatibility

Note for reviewer

@KKould KKould self-assigned this Jan 10, 2026
@KKould KKould added enhancement New feature or request invalid This doesn't seem right labels Jan 10, 2026
@KKould KKould merged commit 9ad596c into main Jan 10, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request invalid This doesn't seem right

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants