-
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
kv: phase out ScanMetaKVs in favor of IterateRangeDescriptors #87503
Comments
Informs cockroachdb#87503; pure code-movement. Going to use it in future commits as part of multi-tenant replication reports (cockroachdb#89987) where we'll need to iterate over the set of range descriptors. Release note: None
There's also this but all this code is getting nuked soon: cockroach/pkg/kv/kvserver/reports/reporter.go Lines 655 to 657 in 4c43c2b
|
Informs cockroachdb#87503; pure code-movement. Going to use it in future commits as part of multi-tenant replication reports (cockroachdb#89987) where we'll need to iterate over the set of range descriptors. Release note: None
87938: bazci: move the logic of posting github issues to bazci r=srosenberg a=healthy-pod This code change moves the logic of filtering tests JSON output files and posting github issues to bazci. Release note: None Epic CRDB-15060 89257: upgrades: remove unused struct field r=stevendanna a=stevendanna Epic: None Release note: None 89873: cliccl: add `encryption-registry-list` command r=jbowenns a=nicktrav The existing `enc_util` package contains a tool that could be used to dump the files in an encryption registry. This command has been broken since the file registry format was updated. Add the `(*PebbleFileRegistry).List` function, that returns a map of files in the registry. Adapt existing test cases. Add a `debug encryption-registry-list` command that will print all files contained in the registry of an encrypted store. This is useful for debugging which store / data key was used to encrypt each file, replacing the equivalent functionality in `enc_util`. Touches: #89095. Epic: None. Release note (ops change): Adds a new command that can be used by an operator to list the files present in the Encryption-At-Rest file registry. 89988: rangedesciter: carve out library for range desc iteration r=irfansharif a=irfansharif Informs #87503; pure code-movement. Going to use it in future commits as part of multi-tenant replication reports (#89987) where we'll need to iterate over the set of range descriptors. Release note: None Co-authored-by: healthy-pod <[email protected]> Co-authored-by: Steven Danna <[email protected]> Co-authored-by: Nick Travers <[email protected]> Co-authored-by: irfan sharif <[email protected]>
Informs cockroachdb#87503; pure code-movement. Going to use it in future commits as part of multi-tenant replication reports (cockroachdb#89987) where we'll need to iterate over the set of range descriptors. Release note: None
Informs cockroachdb#87503; adds the ability to only paginate through range descriptors in the system that overlap with some given span. We're going to use it in future commits as part of multi-tenant replication reports (cockroachdb#89987) where we'll need to iterate over the set of range descriptors that pertain only to some span of interest (for a given index, partition, tenant, etc.) Release note: None
Informs cockroachdb#87503; adds the ability to only paginate through range descriptors in the system that overlap with some given span. We're going to use it in future commits as part of multi-tenant replication reports (cockroachdb#89987) where we'll need to iterate over the set of range descriptors that pertain only to some span of interest (for a given index, partition, tenant, etc.) Release note: None
91330: rangedesciter: support scoped iteration r=irfansharif a=irfansharif Informs #87503; adds the ability to only paginate through range descriptors in the system that overlap with some given span. We're going to use it in future commits as part of multi-tenant replication reports (#89987) where we'll need to iterate over the set of range descriptors that pertain only to some span of interest (for a given index, partition, tenant, etc.) Release note: None. 92253: sql/sem: add support for "pg_blocking_pids" builtin r=rafiss a=girishv-tw added support pg_blocking_pids builtin. Needed for pgadmin. Closes #91068 Release note (sql change): add support for pg_blocking_pids builtin function. It is hardcoded to return an empty array because CockroachDB has no equivalent concept of PIDs as in Postgres. Co-authored-by: irfan sharif <[email protected]> Co-authored-by: GirishV <[email protected]>
We have marked this issue as stale because it has been inactive for |
We use
ScanMetaKVs
1 in a few places. This has problems:[k, k.Next()]
2In other words, it's a bit janky. But we have
IterateRangeDescriptors
3 which is tucked away in theupgradecluster
package. This one deals with the second copy of r1, and paginates. I am not sure if it has the second problem, as it doesn't take a keyspan but instead returns all descriptors.We should move
IterateRangeDescriptors
out of theupgradecluster
package and make it a kv-level util, teach it how to restrict to only the meta ranges touching a givenSpan
, make sure that it doesn't pick up the middle problem along the way, and eliminateScanMetaKVs
from the codebase.Jira issue: CRDB-19381
Footnotes
https://github.com/cockroachdb/cockroach/blob/f4b475a97618755284e6a70d8626c8266ce145fd/pkg/kv/kvclient/scan_meta.go#L21-L40 ↩
https://github.com/cockroachdb/cockroach/pull/87378 ↩ ↩2
https://github.com/cockroachdb/cockroach/blob/32622e1b18030bd52529841ec1bb280a5683d5cb/pkg/upgrade/upgradecluster/cluster.go#L142-L192 ↩
The text was updated successfully, but these errors were encountered: