-
Notifications
You must be signed in to change notification settings - Fork 4k
Open
Labels
A-kvAnything in KV that doesn't belong in a more specific category.Anything in KV that doesn't belong in a more specific category.A-sql-executorSQL txn logicSQL txn logicA-storageRelating to our storage engine (Pebble) on-disk storage.Relating to our storage engine (Pebble) on-disk storage.C-enhancementSolution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)T-storageStorage TeamStorage Team
Description
With value separation (cockroachdb/pebble#112), values will commonly be stored externally to sstables. Retrieving a value will commonly require 1 or 2 additional block reads. Current KV API interfaces do not support retrieving just a key, even if query execution only requires a key. Similarly uniqueness checks that find a key will retrieve its values unnecessarily.
Avoiding value retrievals is the simplest form of end-to-end projection push down, and it doesn't suffer from the API complexity that more general forms of projection push down do.
Jira issue: CRDB-50603
Metadata
Metadata
Assignees
Labels
A-kvAnything in KV that doesn't belong in a more specific category.Anything in KV that doesn't belong in a more specific category.A-sql-executorSQL txn logicSQL txn logicA-storageRelating to our storage engine (Pebble) on-disk storage.Relating to our storage engine (Pebble) on-disk storage.C-enhancementSolution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)T-storageStorage TeamStorage Team