-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Make CAUSAL_READ_RISKY much less risky #1841
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
Conversation
…ecking if the epoch is alive as long as its last commit has been less than MINIMUM_RECOVERY_DURATION ago
time checked on the proxy should be less than the time waited by the master to account for clock speed differences setting REQUIRED_MIN_RECOVERY_DURATION and ENFORCED_MIN_RECOVERY_DURATION to 0 will go back to the old behavior
ajbeamon
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this looks good. The one comment I'd have is that it negatively changes the performance of CAUSAL_READ_RISKY in some cases, so we should probably note that in the release notes. It appears that setting knobs appropriately gets us back to the old behavior, though, so it doesn't seem like a huge deal.
|
Also, we've got some merge conflicts. |
|
I will add release notes, and add a note about it |
# Conflicts: # bindings/flow/tester/Tester.actor.cpp # bindings/go/src/_stacktester/stacktester.go # bindings/java/src/test/com/apple/foundationdb/test/AsyncStackTester.java # bindings/java/src/test/com/apple/foundationdb/test/StackTester.java # bindings/python/tests/tester.py # bindings/ruby/tests/tester.rb # documentation/sphinx/source/api-c.rst # documentation/sphinx/source/api-python.rst # documentation/sphinx/source/api-ruby.rst # documentation/sphinx/source/data-modeling.rst # documentation/sphinx/source/developer-guide.rst # fdbclient/vexillographer/fdb.options # fdbserver/MasterProxyServer.actor.cpp
…Config::GrvConfig
|
I will do the release notes in a separate PR, for now I want to get all of the code which will be in 6.2 merged |
enforce a minimum recovery duration, which allows proxies to avoid checking if the epoch is alive as long as its last commit has been less than MINIMUM_RECOVERY_DURATION ago