summaryrefslogtreecommitdiff
path: root/src/rexi
diff options
context:
space:
mode:
authorNick Vatamaniuc <vatamane@gmail.com>2022-05-19 12:26:39 -0400
committerNick Vatamaniuc <nickva@users.noreply.github.com>2022-05-19 13:52:26 -0400
commit1876689492a06aaf132187608e30890f12d15d36 (patch)
tree3a9701870f582d4fde2a74344a99b724306ec6ce /src/rexi
parenta3e5e59d3565c1ba5b8e3f95bb1bf056858f092b (diff)
downloadcouchdb-1876689492a06aaf132187608e30890f12d15d36.tar.gz
Default rexi use_kill_all to true
It should save some dist bandwidth when workers are canceled at the end of fabric requests. The feature has been available since 3.0.x (3 years ago) so opt to enable it by default. Users who do a rolling upgrade from 2.x could still set it to `false` and then, after the upgrade completes, delete it to return it to default (true).
Diffstat (limited to 'src/rexi')
-rw-r--r--src/rexi/src/rexi.erl9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/rexi/src/rexi.erl b/src/rexi/src/rexi.erl
index fb1763e51..90000dda2 100644
--- a/src/rexi/src/rexi.erl
+++ b/src/rexi/src/rexi.erl
@@ -80,11 +80,10 @@ kill(Node, Ref) ->
%% No rexi_EXIT message will be sent.
-spec kill_all([{node(), reference()}]) -> ok.
kill_all(NodeRefs) when is_list(NodeRefs) ->
- %% Upgrade clause. Since kill_all is a new message, nodes in a mixed
- %% cluster won't know how to process it. In that case, the default is to send
- %% the individual kill messages. Once all the nodes have been upgraded, can
- %% configure the cluster to send kill_all messages.
- case config:get_boolean("rexi", "use_kill_all", false) of
+ %% use_kill_all is available since version 3.0. When performing a rolling
+ %% cluster upgrade from 2.x, set this value to false, then revert it back
+ %% to default (true) after all nodes have been upgraded.
+ case config:get_boolean("rexi", "use_kill_all", true) of
true ->
PerNodeMap = lists:foldl(
fun({Node, Ref}, Acc) ->