-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix bugs related to best-effort queries (#3125)
- Don't use a pending txn cache when running best effort queries to avoid returning uncommitted data. If it gets used, a best-effort query ends up reading uncommitted data from another txn's cache who owns the start ts that best-effort query is "borrowing." - If no txns are going on in the system and we create new predicates by asking for them (case in v1.0 series), a best-effort query would block forever due to predicate checksum mismatch between `OracleDelta` and `MembershipState`. Fix that by sending out an empty `OracleDelta` from Zero after a tablet update. - Add tests in counter tool to check for these edge cases. Changes: * Don't use a pending txn cache when running best effort queries to avoid returning uncommitted data. * Fix a bug caused by best effort queries, where we add a new predicate to the system without doing any transactions. This causes the group checksum to mismatch and stay that way. The fix would push something to Oracle update channel so a new OracleDelta would be produced and sent out. * Add tests to ensure that best effort queries work as expected.
- Loading branch information
1 parent
691b3b3
commit 7a3bb09
Showing
11 changed files
with
419 additions
and
246 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.