-
Notifications
You must be signed in to change notification settings - Fork 96
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
Disable previous riak object after back-pressure sleep is triggered #1041
Disable previous riak object after back-pressure sleep is triggered #1041
Conversation
I think this is a good change to add spec to |
case maybe_backpressure_sleep(riakc_obj:value_count(RiakObject)) of | ||
true -> | ||
%% Backpressure sleep is triggered. Bacause holding | ||
%% previous object can lead to more siblings, discard it. |
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.
My comment recommendation is:
"Backpressure sleep has been triggered. Current manifests folded by this FSM is to be discarded to prevent unnecessary interleaving by other concurrent manifest updates while this sleep."
All riak_test has passed. Will run sibling explosion test tomorrow. |
When back-pressure sleep is triggered by many siblings, holding previous object can lead to more siblings. This commit change the behavior and discard it. This setting has effect only when all the following conditions are met: - Normal PUT Object, no effect for multipart upload - Overwring existing object, no effect for new object - read_before_last_manifest_write=false, this setting was introduced in CS 1.5.3 and default is true
1c9de96
to
2d68301
Compare
Thanks for review. |
Sibling explosion test result indicates that it endures twice more than before. Compare the number of lines until fail. Now working on bors, failing on PLT recreation. |
…ssure-sleep Disable previous riak object after back-pressure sleep is triggered Reviewed-by: kuenishi
@borshop merge |
When back-pressure sleep is triggered by many siblings, holding
previous object can lead to more siblings. This commit change the
behaivior and discard it.
This setting has effect only when all the following conditions are met:
CS 1.5.3 and default is true
This PR addressed #1022 .