Skip to content

Commit a1b29e0

Browse files
authored
Merge pull request #131 from basho/develop-3.0-292
Develop 3.0 292
2 parents 495833f + af1a2f0 commit a1b29e0

11 files changed

+97
-63
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,4 @@ priv/
1414
c_src/
1515
.DS_Store
1616
log/*\.log
17+
.eqc-info

.travis.yml

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
language: erlang
2+
otp_release:
3+
- 20.3.8
4+
- 21.3
5+
- 22.3
6+
script:
7+
- chmod u+x rebar3
8+
- ./rebar3 do upgrade, compile, xref, dialyzer, eunit

eqc/sc.erl

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
-module(sc).
2-
-compile(export_all).
2+
-compile([export_all, nowarn_export_all]).
33

44
-ifdef(EQC).
55

rebar.config

+4-5
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{erl_opts, [debug_info,
2-
%warnings_as_errors,
2+
warnings_as_errors,
33
warn_untyped_record,
44
{platform_define, "^[0-9]+", namespaced_types},
55
{parse_transform, lager_transform}]}.
@@ -9,12 +9,11 @@
99
{cover_enabled, true}.
1010
{xref_checks, [undefined_function_calls]}.
1111
{deps, [
12-
gen_fsm_compat,
13-
{lager, ".*", {git, "git://github.com/erlang-lager/lager.git", {tag, "3.6.1"}}},
14-
{eleveldb, ".*", {git, "git://github.com/basho/eleveldb.git", {branch, "develop-3.0"}}}
12+
{lager, {git, "git://github.com/erlang-lager/lager.git", {tag, "3.8.0"}}},
13+
{eleveldb, {git, "git://github.com/basho/eleveldb.git", {branch, "develop-3.0"}}}
1514
]}.
1615

17-
{plugins, [{rebar3_eqc, {git, "https://github.com/Vagabond/rebar3-eqc-plugin", {branch, "master"}}}, pc]}.
16+
{plugins, [{eqc_rebar, {git, "https://github.com/Quviq/eqc-rebar", {branch, "master"}}}, pc]}.
1817
{provider_hooks,
1918
[
2019
{pre,

rebar3

141 KB
Binary file not shown.

src/riak_ensemble.app.src

-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
{applications, [
77
kernel,
88
stdlib,
9-
gen_fsm_compat,
109
lager,
1110
eleveldb
1211
]},

src/riak_ensemble_exchange.erl

+10-6
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,10 @@
2222
-compile(nowarn_export_all).
2323
-compile(export_all).
2424

25+
-compile({nowarn_deprecated_function,
26+
[{gen_fsm, sync_send_event, 3},
27+
{gen_fsm, send_event, 2}]}).
28+
2529
-include("stacktrace.hrl").
2630

2731
start_exchange(Ensemble, Peer, Id, Tree, Peers, Views, Trusted) ->
@@ -30,7 +34,7 @@ start_exchange(Ensemble, Peer, Id, Tree, Peers, Views, Trusted) ->
3034
perform_exchange(Ensemble, Peer, Id, Tree, Peers, Views, Trusted)
3135
catch ?_exception_(Class, Reason, StackToken) ->
3236
io:format("CAUGHT: ~p/~p~n~p~n", [Class, Reason, ?_get_stacktrace_(StackToken)]),
33-
gen_fsm_compat:send_event(Peer, exchange_failed)
37+
gen_fsm:send_event(Peer, exchange_failed)
3438
end
3539
end).
3640

@@ -53,7 +57,7 @@ perform_exchange(Ensemble, Peer, Id, Tree, Peers, Views, Trusted) ->
5357
end,
5458
case RemotePeers of
5559
failed ->
56-
gen_fsm_compat:send_event(Peer, exchange_failed),
60+
gen_fsm:send_event(Peer, exchange_failed),
5761
ok;
5862
_ ->
5963
perform_exchange2(Ensemble, Peer, Id, Tree, RemotePeers)
@@ -65,14 +69,14 @@ perform_exchange2(Ensemble, Peer, Id, Tree, RemotePeers) ->
6569
exchange(Ensemble, Peer, Id, Tree, RemotePeers);
6670
false ->
6771
%% io:format(user, "~p: tree_corrupted (perform_exchange2)~n", [Id]),
68-
gen_fsm_compat:sync_send_event(Peer, tree_corrupted, infinity)
72+
gen_fsm:sync_send_event(Peer, tree_corrupted, infinity)
6973
end.
7074

7175
exchange(_Ensemble, Peer, _Id, _Tree, []) ->
72-
gen_fsm_compat:send_event(Peer, exchange_complete);
76+
gen_fsm:send_event(Peer, exchange_complete);
7377
exchange(Ensemble, Peer, Id, Tree, [RemotePeer|RemotePeers]) ->
7478
RemotePid = riak_ensemble_manager:get_peer_pid(Ensemble, RemotePeer),
75-
RemoteTree = gen_fsm_compat:sync_send_event(RemotePid, tree_pid, infinity),
79+
RemoteTree = gen_fsm:sync_send_event(RemotePid, tree_pid, infinity),
7680
Local = fun(exchange_get, {L,B}) ->
7781
exchange_get(L, B, Peer, Tree);
7882
(start_exchange_level, _) ->
@@ -104,7 +108,7 @@ exchange(Ensemble, Peer, Id, Tree, [RemotePeer|RemotePeers]) ->
104108
exchange_get(L, B, PeerPid, Tree) ->
105109
case riak_ensemble_peer_tree:exchange_get(L, B, Tree) of
106110
corrupted ->
107-
gen_fsm_compat:sync_send_event(PeerPid, tree_corrupted, infinity),
111+
gen_fsm:sync_send_event(PeerPid, tree_corrupted, infinity),
108112
throw(corrupted);
109113
Hashes ->
110114
Hashes

src/riak_ensemble_msg.erl

+10-6
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,10 @@
2222

2323
-module(riak_ensemble_msg).
2424

25+
-compile({nowarn_deprecated_function,
26+
[{gen_fsm, send_all_state_event, 2},
27+
{gen_fsm, send_event, 2}]}).
28+
2529
-export([send_all/4,
2630
send_all/5,
2731
blocking_send_all/4,
@@ -85,7 +89,7 @@ send_all(Msg, Id, Peers, Views) ->
8589
-spec send_all(msg(), peer_id(), peer_pids(), views(), required()) -> msg_state().
8690
send_all(_Msg, Id, _Peers=[{Id,_}], _Views, _Required) ->
8791
?OUT("~p: self-sending~n", [Id]),
88-
gen_fsm_compat:send_event(self(), {quorum_met, []}),
92+
gen_fsm:send_event(self(), {quorum_met, []}),
8993
#msgstate{awaiting=undefined, timer=undefined, replies=[], id=Id};
9094
send_all(Msg, Id, Peers, Views, Required) ->
9195
?OUT("~p/~p: sending to ~p: ~p~n", [Id, self(), Peers, Msg]),
@@ -138,7 +142,7 @@ send_request({PeerId, PeerPid}, ReqId, Event) ->
138142
reply(From, PeerId, nack);
139143
_ ->
140144
?OUT("~p: Sending to ~p: ~p~n", [self(), PeerId, Event]),
141-
gen_fsm_compat:send_event(PeerPid, Event)
145+
gen_fsm:send_event(PeerPid, Event)
142146
end.
143147

144148
%%%===================================================================
@@ -172,14 +176,14 @@ send_cast({_PeerId, PeerPid}, Event) ->
172176
ok;
173177
_ ->
174178
?OUT("~p: Sending to ~p: ~p~n", [self(), _PeerId, Event]),
175-
gen_fsm_compat:send_event(PeerPid, Event)
179+
gen_fsm:send_event(PeerPid, Event)
176180
end.
177181

178182
%%%===================================================================
179183

180184
-spec reply(msg_from(), peer_id(), any()) -> ok.
181185
reply({riak_ensemble_msg, Sender, ReqId}, Id, Reply) ->
182-
gen_fsm_compat:send_all_state_event(Sender, {reply, ReqId, Id, Reply}).
186+
gen_fsm:send_all_state_event(Sender, {reply, ReqId, Id, Reply}).
183187

184188
%%%===================================================================
185189

@@ -349,7 +353,7 @@ add_reply(Peer, Reply, MsgState=#msgstate{timer=Timer}) ->
349353
true ->
350354
cancel_timer(Timer),
351355
{Valid, _Nacks} = find_valid(Replies),
352-
gen_fsm_compat:send_event(self(), {quorum_met, Valid}),
356+
gen_fsm:send_event(self(), {quorum_met, Valid}),
353357
MsgState#msgstate{replies=[], awaiting=undefined, timer=undefined};
354358
false ->
355359
MsgState#msgstate{replies=Replies};
@@ -361,7 +365,7 @@ add_reply(Peer, Reply, MsgState=#msgstate{timer=Timer}) ->
361365
-spec quorum_timeout(msg_state()) -> msg_state().
362366
quorum_timeout(#msgstate{replies=Replies}) ->
363367
{Valid, _Nacks} = find_valid(Replies),
364-
gen_fsm_compat:send_event(self(), {timeout, Valid}),
368+
gen_fsm:send_event(self(), {timeout, Valid}),
365369
#msgstate{awaiting=undefined, timer=undefined, replies=[]}.
366370

367371
%%%===================================================================

0 commit comments

Comments
 (0)