summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Klishin <mklishin@pivotal.io>2018-04-11 11:50:59 +0300
committerMichael Klishin <mklishin@pivotal.io>2018-04-11 12:13:56 +0300
commite840323bc49db4e4e378cf7b95bacabe2f40d1c8 (patch)
tree4b2053c8fccb858aca96ed7ff1e496cb7e1a7abd
parenta267d6bc0b02eff60efed677027c6db392be726b (diff)
downloadrabbitmq-server-git-e840323bc49db4e4e378cf7b95bacabe2f40d1c8.tar.gz
Make it possible for peer discovery backends to provide their own RSD range
References rabbitmq/rabbitmq-peer-discovery-k8s#23.
-rw-r--r--src/rabbit_peer_discovery.erl9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/rabbit_peer_discovery.erl b/src/rabbit_peer_discovery.erl
index b1a6db637c..19df5c07cb 100644
--- a/src/rabbit_peer_discovery.erl
+++ b/src/rabbit_peer_discovery.erl
@@ -184,11 +184,16 @@ inject_randomized_delay() ->
-spec randomized_delay_range_in_ms() -> {integer(), integer()}.
randomized_delay_range_in_ms() ->
+ Backend = backend(),
+ Default = case erlang:function_exported(Backend, randomized_startup_delay_range, 0) of
+ true -> Backend:randomized_startup_delay_range();
+ false -> ?DEFAULT_STARTUP_RANDOMIZED_DELAY
+ end,
{Min, Max} = case application:get_env(rabbit, cluster_formation) of
{ok, Proplist} ->
- proplists:get_value(randomized_startup_delay_range, Proplist, ?DEFAULT_STARTUP_RANDOMIZED_DELAY);
+ proplists:get_value(randomized_startup_delay_range, Proplist, Default);
undefined ->
- ?DEFAULT_STARTUP_RANDOMIZED_DELAY
+ Default
end,
{Min * 1000, Max * 1000}.