-
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.
94939: storage: Push pagination for EndTxn into the MVCC layer r=nvanbenschoten a=KaiSun314 Informs: #77228 This PR consists of two parts: adding `MVCCPagination` and integrating `MVCCPagination` to push pagination of `EndTxn` into the MVCC layer. Part 1: Add `MVCCPagination` Implement MVCCPagination which calls a user-inputted function f() until it returns an error (note that the iterutil.StopIteration() error means we have iterated through all elements), or until the number of keys hits the maxKeys limit or the number of bytes hits the targetBytes limit. MVCCPagination is a general framework that enables key and byte pagination. Part 2: Integrate `MVCCPagination` to Push Pagination of `EndTxn` Into The MVCC Layer In this PR, we push key pagination for EndTxn (currently located in cmd_end_transaction.go) into the MVCC layer (mvcc.go) by integrating MVCCPagination from the previous commit into EndTxn. Release note: None Co-authored-by: Kai Sun <[email protected]>
- Loading branch information
Showing
4 changed files
with
293 additions
and
81 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
Oops, something went wrong.