Remove all flap counting and inner projection stuff
This commit is contained in:
parent
42aeecd9db
commit
4376ce9ec1
9 changed files with 156 additions and 1399 deletions
|
@ -59,8 +59,6 @@
|
|||
upi :: [pv1_server()],
|
||||
repairing :: [pv1_server()],
|
||||
down :: [pv1_server()],
|
||||
flap :: 'undefined' | #flap_i{}, % flapping information
|
||||
inner :: 'undefined' | #projection_v1{},
|
||||
dbg :: list(), %proplist(), is checksummed
|
||||
dbg2 :: list(), %proplist(), is not checksummed
|
||||
members_dict :: p_srvr_dict()
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -699,8 +699,6 @@ conv_to_projection_v1(#mpb_projectionv1{epoch_number=Epoch,
|
|||
upi=UPI,
|
||||
repairing=Repairing,
|
||||
down=Down,
|
||||
opaque_flap=Flap,
|
||||
opaque_inner=Inner,
|
||||
opaque_dbg=Dbg,
|
||||
opaque_dbg2=Dbg2,
|
||||
members_dict=MembersDict}) ->
|
||||
|
@ -714,8 +712,6 @@ conv_to_projection_v1(#mpb_projectionv1{epoch_number=Epoch,
|
|||
upi=[to_atom(X) || X <- UPI],
|
||||
repairing=[to_atom(X) || X <- Repairing],
|
||||
down=[to_atom(X) || X <- Down],
|
||||
flap=dec_optional_sexp(Flap),
|
||||
inner=dec_optional_sexp(Inner),
|
||||
dbg=dec_sexp(Dbg),
|
||||
dbg2=dec_sexp(Dbg2),
|
||||
members_dict=conv_to_members_dict(MembersDict)}.
|
||||
|
@ -871,8 +867,6 @@ conv_from_projection_v1(#projection_v1{epoch_number=Epoch,
|
|||
upi=UPI,
|
||||
repairing=Repairing,
|
||||
down=Down,
|
||||
flap=Flap,
|
||||
inner=Inner,
|
||||
dbg=Dbg,
|
||||
dbg2=Dbg2,
|
||||
members_dict=MembersDict}) ->
|
||||
|
@ -886,8 +880,6 @@ conv_from_projection_v1(#projection_v1{epoch_number=Epoch,
|
|||
upi=[to_list(X) || X <- UPI],
|
||||
repairing=[to_list(X) || X <- Repairing],
|
||||
down=[to_list(X) || X <- Down],
|
||||
opaque_flap=enc_optional_sexp(Flap),
|
||||
opaque_inner=enc_optional_sexp(Inner),
|
||||
opaque_dbg=enc_sexp(Dbg),
|
||||
opaque_dbg2=enc_sexp(Dbg2),
|
||||
members_dict=conv_from_members_dict(MembersDict)}.
|
||||
|
|
|
@ -130,7 +130,6 @@ update_checksum(P) ->
|
|||
CSum = crypto:hash(sha,
|
||||
term_to_binary(P#projection_v1{epoch_csum= <<>>,
|
||||
creation_time=undefined,
|
||||
flap=undefined,
|
||||
dbg2=[]})),
|
||||
P#projection_v1{epoch_csum=CSum}.
|
||||
|
||||
|
@ -173,20 +172,10 @@ make_summary(#projection_v1{epoch_number=EpochNum,
|
|||
author_server=Author,
|
||||
upi=UPI_list,
|
||||
repairing=Repairing_list,
|
||||
inner=Inner,
|
||||
flap=Flap,
|
||||
dbg=Dbg, dbg2=Dbg2}) ->
|
||||
InnerInfo = if is_record(Inner, projection_v1) ->
|
||||
[{inner, make_summary(Inner)}];
|
||||
true ->
|
||||
[]
|
||||
end,
|
||||
[{epoch,EpochNum}, {csum,_CSum4},
|
||||
{author,Author}, {mode,CMode},{witnesses, Witness_list},
|
||||
{upi,UPI_list},{repair,Repairing_list},{down,Down_list}] ++
|
||||
InnerInfo ++
|
||||
[{flap, Flap}] ++
|
||||
%% [{flap, lists:flatten(io_lib:format("~p", [Flap]))}] ++
|
||||
[{d,Dbg}, {d2,Dbg2}].
|
||||
|
||||
%% @doc Make a `p_srvr_dict()' out of a list of `p_srvr()' or out of a
|
||||
|
|
|
@ -323,10 +323,10 @@ do_proj_write4(ProjType, Proj, Path, Epoch, #state{consistency_mode=CMode}=S) ->
|
|||
ok = file:write(FH, term_to_binary(Proj)),
|
||||
ok = file:sync(FH),
|
||||
ok = file:close(FH),
|
||||
EffectiveProj = machi_chain_manager1:inner_projection_or_self(Proj),
|
||||
EffectiveProj = Proj,
|
||||
EffectiveEpoch = EffectiveProj#projection_v1.epoch_number,
|
||||
EpochId = {Epoch, Proj#projection_v1.epoch_csum},
|
||||
EffectiveEpochId = {EffectiveEpoch, EffectiveProj#projection_v1.epoch_csum},
|
||||
EpochId = machi_projection:get_epoch_id(Proj),
|
||||
EffectiveEpochId = machi_projection:get_epoch_id(EffectiveProj),
|
||||
%%
|
||||
NewS = if ProjType == public,
|
||||
Epoch > element(1, S#state.max_public_epochid) ->
|
||||
|
|
|
@ -396,8 +396,7 @@ make_req_fun({get_epoch_id},
|
|||
fun() -> case Mod:read_latest_projection(Sock, private) of
|
||||
{ok, P} ->
|
||||
#projection_v1{epoch_number=Epoch,
|
||||
epoch_csum=CSum} =
|
||||
machi_chain_manager1:inner_projection_or_self(P),
|
||||
epoch_csum=CSum} = P,
|
||||
{ok, {Epoch, CSum}};
|
||||
Error ->
|
||||
Error
|
||||
|
|
|
@ -353,7 +353,5 @@ find_common_prefix([H|L1], [H|L2]) ->
|
|||
find_common_prefix(_, _) ->
|
||||
[].
|
||||
|
||||
inner_projection_exists(#projection_v1{inner=undefined}) ->
|
||||
false;
|
||||
inner_projection_exists(#projection_v1{inner=_}) ->
|
||||
true.
|
||||
inner_projection_exists(_) ->
|
||||
false.
|
||||
|
|
|
@ -378,16 +378,12 @@ convergence_demo_testfun(NumFLUs, MgrOpts0) ->
|
|||
%% Uncomment *one* of the following make_partition_list() bodies.
|
||||
|
||||
make_partition_list(All_list) ->
|
||||
Island1 = [hd(All_list), lists:last(All_list)],
|
||||
Island2 = All_list -- Island1,
|
||||
[
|
||||
[{b,c}],
|
||||
[{a,c},{b,c}]
|
||||
%% [{b,c}],
|
||||
%% [],
|
||||
%% [{c,d}],
|
||||
%% [],
|
||||
%% [{d,e}],
|
||||
%% [],
|
||||
%% [{c,e}]
|
||||
[{X,Y} || X <- Island1, Y <- Island2]
|
||||
++
|
||||
[{X,Y} || X <- Island2, Y <- Island1]
|
||||
].
|
||||
|
||||
%% _X_Ys1 = [[{X,Y}] || X <- All_list, Y <- All_list, X /= Y],
|
||||
|
@ -405,6 +401,35 @@ make_partition_list(All_list) ->
|
|||
%% %% Concat = _X_Ys1 ++ _X_Ys2 ++ _X_Ys3,
|
||||
%% random_sort(lists:usort([lists:sort(L) || L <- Concat])).
|
||||
|
||||
%% %% for len=5 and 2 witnesses
|
||||
%% [
|
||||
%% [{b,c}],
|
||||
%% [],
|
||||
%% [{b,c}],
|
||||
%% [{a,c},{b,c}],
|
||||
%% [{b,c}],
|
||||
%% [],
|
||||
%% [{c,d}],
|
||||
%% [],
|
||||
%% [{d,e}],
|
||||
%% [],
|
||||
%% [{d,c}],
|
||||
%% [{b,c}],
|
||||
%% [],
|
||||
%% [{c,e}]
|
||||
%% ].
|
||||
%% [
|
||||
%% [{b,c}],
|
||||
%% [{a,c},{b,c}]
|
||||
%% %% [{b,c}],
|
||||
%% %% [],
|
||||
%% %% [{c,d}],
|
||||
%% %% [],
|
||||
%% %% [{d,e}],
|
||||
%% %% [],
|
||||
%% %% [{c,e}]
|
||||
%% ].
|
||||
|
||||
%% [
|
||||
%% [{b,c}],
|
||||
%% [{b,c},{c,d},{e,a}],
|
||||
|
@ -675,9 +700,8 @@ get_latest_inner_proj_summ(FLU) ->
|
|||
{ok, Proj} = ?FLU_PC:read_latest_projection(FLU, private),
|
||||
#projection_v1{epoch_number=E, epoch_csum= <<CSum4:4/binary, _/binary>>,
|
||||
upi=UPI, repairing=Repairing,
|
||||
witnesses=Witnesses, down=Down} =
|
||||
machi_chain_manager1:inner_projection_or_self(Proj),
|
||||
Inner_p = machi_chain_manager1:inner_projection_exists(Proj),
|
||||
witnesses=Witnesses, down=Down} = Proj,
|
||||
Inner_p = false,
|
||||
EpochID = {E, CSum4},
|
||||
{EpochID, UPI, Repairing, Down, Witnesses, Inner_p}.
|
||||
|
||||
|
|
|
@ -81,7 +81,7 @@ unanimous_report(Epoch, Namez) ->
|
|||
FLU_Projs = [{FLUName,
|
||||
case ?FLU_PC:read_projection(FLU, private, Epoch) of
|
||||
{ok, T} ->
|
||||
machi_chain_manager1:inner_projection_or_self(T);
|
||||
T;
|
||||
_Else ->
|
||||
not_in_this_epoch
|
||||
end} || {FLUName, FLU} <- Namez],
|
||||
|
|
Loading…
Reference in a new issue