From: Peter Lemenkov <lemenkov@gmail.com>
Date: Wed, 17 Aug 2016 15:51:15 +0300
Subject: [PATCH] Fix deprecation warning while building with Erlang 19
The following functions are considered deprecated:
- crypto:rand_bytes/1
- random:seed/1
- random:uniform/1
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/src/riak_ensemble_config.erl b/src/riak_ensemble_config.erl
index 7d4aa3d..a24a08a 100644
--- a/src/riak_ensemble_config.erl
+++ b/src/riak_ensemble_config.erl
@@ -51,7 +51,7 @@ follower_timeout() ->
%% The election timeout used for randomized election.
election_timeout() ->
Timeout = follower_timeout(),
- Timeout + random:uniform(Timeout).
+ Timeout + rand:uniform(Timeout).
%% @doc
%% The prefollow timeout determines how long a peer waits to hear from the
diff --git a/src/riak_ensemble_peer.erl b/src/riak_ensemble_peer.erl
index 5166413..54906a0 100644
--- a/src/riak_ensemble_peer.erl
+++ b/src/riak_ensemble_peer.erl
@@ -1818,9 +1818,9 @@ get_value(Obj, Default, State) ->
init([Mod, Ensemble, Id, Args]) ->
lager:debug("~p: starting peer", [Id]),
{A,B,C} = os:timestamp(),
- _ = random:seed(A + erlang:phash2(Id),
+ _ = rand:seed(exsplus, {A + erlang:phash2(Id),
B + erlang:phash2(node()),
- C),
+ C}),
ETS = ets:new(x, [public, {read_concurrency, true}, {write_concurrency, true}]),
TreeTrust = case riak_ensemble_config:tree_validation() of
false ->
diff --git a/src/riak_ensemble_util.erl b/src/riak_ensemble_util.erl
index e2e5abd..17204ed 100644
--- a/src/riak_ensemble_util.erl
+++ b/src/riak_ensemble_util.erl
@@ -148,7 +148,7 @@ shuffle(L=[_]) ->
L;
shuffle(L) ->
Range = length(L),
- L2 = [{random:uniform(Range), E} || E <- L],
+ L2 = [{rand:uniform(Range), E} || E <- L],
[E || {_, E} <- lists:sort(L2)].
%% Copied from riak_core_send_msg.erl