-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
64253: builtins: implement ST_Envelope(box2d) r=sumeerbhola a=otan Release note (sql change): Implement ST_Envelope for Box2D. 64265: kvserver: speed up intent resolution for aborted txns r=sumeerbhola a=erikgrinaker ### kvserver: speed up intent resolution for aborted txns Cleaning up intents for aborted txns during `EndTxn` could be very slow for intents that had already been removed by a concurrent process, due to suboptimal iterator reuse. This patch changes this intent resolution path to instead create a new iterator with `Prefix:true` for each intent rather than seeking a reusable iterator. This reduces intent resolution time by two orders of magnitude (~200s → ~1s in tests). A simple performance regression test has been added for this. Resolves #64092. Release note (performance improvement): improved intent cleanup performance for aborted transactions. ### intentresolver: reduce ranged resolution batch size This patch adds the constants `intentResolverRangeBatchSize` and `intentResolverRangeRequestSize` to control the number of requests and number of intents per request for ranged intent resolution. It also reduces the number of range requests per batch from 100 to 10, since ranged requests can fan out to hit 200 intents each (via range scans) which is significantly more expensive than single-intent requests. Release note: None /cc @cockroachdb/kv 64324: kvserver: synchronize replica removal with read-only requests r=tbg,nvanbenschoten a=erikgrinaker Replica removal did not synchronize with in-flight read-only requests, which could cause them to be evaluated on a removed (empty) replica, returning an empty result. This patch fixes the problem by locking `Replica.readOnlyCmdMu` during replica removal, thus either waiting for read-only requests to complete or not evaluating them. Resolves #64325. Release note (bug fix): Fixed a race condition where read-only requests during replica removal (e.g. during range merges or rebalancing) could be evaluated on the removed replica, returning an empty result. /cc @cockroachdb/kv We lock `readOnlyCmdMu` during `removeUninitializedReplicaRaftMuLocked` and `tryGetOrCreateReplica` as well, even though I don't believe reads can be routed to these replicas, following review comments. 64342: opt: remove non-equivalent group columns in OrderingChoice.Simplify r=mgartner a=mgartner Previously, `OrderingChoice.Simplify` would add but never remove columns from ordering column groups based on equivalency in an FD. In rare cases, this could cause the optimizer to generate expressions which violated an invariant that all columns in an ordering column group are equivalent according to the expression's FD. Violation of this invariant only panics in test builds, and in the test cases found that trigger this panic, there is likely no correctness issues with the expression. Therefore, there was probably no impact in any release builds. This commit updates `OrderingChoice.Simplify` so that non-equivalent columns in an ordering column group are removed from the group, satisfying the invariant. Fixes #63794 Release note: None Co-authored-by: Oliver Tan <[email protected]> Co-authored-by: Erik Grinaker <[email protected]> Co-authored-by: Marcus Gartner <[email protected]>
- Loading branch information
Showing
21 changed files
with
369 additions
and
189 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.