Skip to content
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

rac2: removing replica or closing range controller should return relevant tracked deduction #130683

Closed
kvoli opened this issue Sep 13, 2024 · 0 comments · Fixed by #130684
Closed
Assignees
Labels
A-replication-admission-control-v2 Related to introduction of replication AC v2 C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) T-kv KV Team

Comments

@kvoli
Copy link
Collaborator

kvoli commented Sep 13, 2024

Currently the RangeController will not return any tracked deductions when CloseRaftMuLocked is called, or when SetReplicasRaftMuLocked is called, and a replica is removed from the replica set. They should.

Jira issue: CRDB-42180

Epic CRDB-37515

@kvoli kvoli added C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) T-kv KV Team A-replication-admission-control-v2 Related to introduction of replication AC v2 labels Sep 13, 2024
@kvoli kvoli self-assigned this Sep 13, 2024
kvoli added a commit to kvoli/cockroach that referenced this issue Sep 13, 2024
When a replica was removed from a range, or the range controller closed,
any tracked deductions did not return tokens to the respective stream
token counts.

Update `CloseRaftMuLocked` and `SetReplicasRaftMuLocked` to close any
replica send streams for replicas which are no longer part of the
replica set, closing all when the range controller closes.

Also immediately close the send stream when a replica transitions to
StateSnapshot.

Resolves: cockroachdb#130683
Release note: None
kvoli added a commit to kvoli/cockroach that referenced this issue Sep 13, 2024
When a replica was removed from a range, or the range controller closed,
any tracked deductions did not return tokens to the respective stream
token counts.

Update `CloseRaftMuLocked` and `SetReplicasRaftMuLocked` to close any
replica send streams for replicas which are no longer part of the
replica set, closing all when the range controller closes.

Also immediately close the send stream when a replica transitions to
StateSnapshot.

Resolves: cockroachdb#130683
Release note: None
craig bot pushed a commit that referenced this issue Sep 13, 2024
…130695

130178: roachtest: update multitenant-multiregion to use roachprod API r=herkolategan,fqazi a=renatolabs

This updates the `multitenant-multiregion` test to use the "official"
multitenant roachprod API instead of the deprecated functions in
`multitenant_utils.go`.

Fixes: #124029

Release note: None

130461: replica_rac2: clean up admitted vector sending r=sumeerbhola a=pav-kv

This PR makes `processorImpl` track the raft node `term` unconditionally. It then factors out the admitted vector sending into a well-documented function, and uses the new `term` field to filter out no-op admitted vectors that don't match the leader's term.

Part of #129508

130667: opt: remove volatile histogram benchmarks r=mgartner a=mgartner

Benchmarks for `(*Histogram).ValuesCount`, `(*Histogram).MaxFrequency`,
and `(*Histogram).ApplySelectivity` have been removed. These methods are
compiled into very few instructions and are very fast. This makes them
susceptible to "phantom regressions" where unlucky interactions with the
CPU cache or other resources can degrade performance between commits
even when the methods compile to the same set of instructions. See
https://cockroachlabs.slack.com/archives/C4X2J0RH6/p1725978728168389
for more details.

Epic: None

Release note: None


130670: schemachanger: block zone config changes if schema_locked is set r=rafiss a=annrpom

Fixes: #130668
Release note (bug fix): Fixed a bug where zone configuration changes issued by
the declarative schema changer were not blocked if a table had `schema_locked`
set. For more information about the declarative schema changer, see:
https://www.cockroachlabs.com/docs/stable/online-schema-changes#declarative-schema-changer/.

130684: rac2: return tracked deductions on close/removal r=sumeerbhola a=kvoli

When a replica was removed from a range, or the range controller closed, any tracked deductions did not return tokens to the respective stream token counts.

Update `CloseRaftMuLocked` and `SetReplicasRaftMuLocked` to close any replica send streams for replicas which are no longer part of the replica set, closing all when the range controller closes.

Also immediately close the send stream when a replica transitions to StateSnapshot.

Resolves: #130683
Release note: None

130685: cluster-ui: copy some base components from cloud r=xinhaoz a=xinhaoz

This commit ports over some basic components from cloud. They are
placed in a new directory, `sharedFromCloud` and will be deleted
once the new package is ready. This is simply a temporary solution.

Components ported over, with their dependencies:
- Search
- PageHeader
- PageCount (for displaying table pagination)

Epic: CRDB-37558

Release note: None

130692: tablemetadatacache: use store ids from response when updating cache r=xinhaoz a=xinhaoz

Now that #129060 is done we can use the StoreIDs from the span stats response when updating systme.table_metadata.

Epic: CRDB-37558
Release note: None

130694: go.mod: bump Pebble to d5fd9927fa4d r=sumeerbhola a=jbowens

Changes:

 * [`d5fd9927`](cockroachdb/pebble@d5fd9927) sstable: introduce RawColumnWriter
 * [`0665a3e1`](cockroachdb/pebble@0665a3e1) .github: use upload-artifact@v4
 * [`e0afd551`](cockroachdb/pebble@e0afd551) base: consolidate internal key parsing functions
 * [`117aa7d9`](cockroachdb/pebble@117aa7d9) colblk: allow finishing data, index blocks without last row
 * [`2cc212bb`](cockroachdb/pebble@2cc212bb) binfmt: add relative offsets
 * [`7de517e6`](cockroachdb/pebble@7de517e6) colblk: allow UintBuilder.Get into sparse, default rows
 * [`065a044c`](cockroachdb/pebble@065a044c) colblk: fix up zero-row structures
 * [`934a2235`](cockroachdb/pebble@934a2235) colblk: expose block reader Describe methods
 * [`376d455b`](cockroachdb/pebble@376d455b) sstable: adapt EstimateDiskUsage to be agnostic to index block impl
 * [`da5055ad`](cockroachdb/pebble@da5055ad) sstable: remove RawWriter.IsStrictObsolete
 * [`fc6eab06`](cockroachdb/pebble@fc6eab06) manual: add cgo memory accounting
 * [`c8c3806e`](cockroachdb/pebble@c8c3806e) sstable/block: fix compression roundtrip test
 * [`b3a81bd6`](cockroachdb/pebble@b3a81bd6) sstable: refactor sstable layout facilities, add decodeLayout
 * [`729b6f72`](cockroachdb/pebble@729b6f72) treesteps: add depth limits
 * [`90953236`](cockroachdb/pebble@90953236) sstable: remove unnecessary loop while identifying filter block
 * [`1c5e99fc`](cockroachdb/pebble@1c5e99fc) update crlib and use crstrings.Lines in a few tests
 * [`0c4e2c6c`](cockroachdb/pebble@0c4e2c6c) treesteps: infrastructure for visualization of operations on trees
 * [`d3ef91b8`](cockroachdb/pebble@d3ef91b8) sstable: return interface type from NewRawWriter
 * [`a0f6b9ae`](cockroachdb/pebble@a0f6b9ae) cache: use a specific type for the cache ID
 * [`19e3a699`](cockroachdb/pebble@19e3a699) cache: remove entry.refcnt

Release note: none.
Epic: none.

130695: schemachanger: refactor deprecated call in mustRetrieveIndexNameElem r=fqazi a=annrpom

This patch refactors `mustRetrieveIndexNameElem` to be more aligned with how we get elems in the DSC today; we also move this in the `helpers.go` file as zone config partitions code uses it to support `ALTER PARTITION ... OF TABLE`.

Informs: #129889
Release note: None

Co-authored-by: Renato Costa <[email protected]>
Co-authored-by: Pavel Kalinnikov <[email protected]>
Co-authored-by: Marcus Gartner <[email protected]>
Co-authored-by: Annie Pompa <[email protected]>
Co-authored-by: Austen McClernon <[email protected]>
Co-authored-by: Xin Hao Zhang <[email protected]>
Co-authored-by: Jackson Owens <[email protected]>
@craig craig bot closed this as completed in 0cab9b5 Sep 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-replication-admission-control-v2 Related to introduction of replication AC v2 C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) T-kv KV Team
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant