-
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.
storage: temporarily disable maxItersBeforeSeek
This commit temporarily disables maxItersBeforeSeek by setting its value to 0. This reveals a bug that was hidden by `maxItersBeforeSeek` and is demonstrated by the change to `TestMVCCHistories/uncertainty_interval_with_local_uncertainty_limit`. The bug is due to incorrect key ordering of MVCC keys with synthetic timestamps. With the current encoding of MVCC key versions and the custom key comparator `EngineKeyCompare`, the inclusion of a synthetic bit in a key's verion timestamp causes the key's encoding to sort _before_ the same key/timestamp without a synthetic bit. This is because `EngineKeyCompare` considers the timestamp to be larger and it sorts versions in decreasing timestamp order. As a result, a seek to a version timestamp without a synthetic bit will seek past and fail to observe a value with that same timestamp but with a synthetic bit. In other words, a seek to timestamp `10,20` will fail to see a version stored at `10,20?`. This is unintended behavior, as the synthetic bit should not affect key ordering or key equality (see `MVCCKey.Equal`). This change will be mostly reverted in a later commit when the bug is fixed.
- Loading branch information
1 parent
7f8bdf2
commit 73e6dd4
Showing
4 changed files
with
35 additions
and
27 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