170170-opaque state () :: # state {}.
171171
172172-type config () :: #{name := atom (),
173+ machine_version := ra_machine :version (),
173174 dead_letter_handler => applied_mfa (),
174175 become_leader_handler => applied_mfa (),
175176 cancel_customer_handler => applied_mfa (),
@@ -902,7 +903,8 @@ size_test(NumMsg, NumCust) ->
902903 EnqGen = fun (N ) -> {N , {enqueue , N }} end ,
903904 CustGen = fun (N ) -> {N , {checkout , {auto , 100 },
904905 spawn (fun () -> ok end )}} end ,
905- S0 = run_log (1 , NumMsg , EnqGen , init (#{name => size_test })),
906+ S0 = run_log (1 , NumMsg , EnqGen , init (#{name => size_test ,
907+ machine_version => 0 })),
906908 S = run_log (NumMsg , NumMsg + NumCust , CustGen , S0 ),
907909 S2 = S # state {ra_indexes = ra_fifo_index :map (fun (_ , _ ) -> undefined end ,
908910 S # state .ra_indexes )},
@@ -918,29 +920,13 @@ perf_test(NumMsg, NumCust) ->
918920 {N , {settle , N - NumMsg - NumCust - 1 , Pid }}
919921 end ,
920922 S0 = run_log (1 , NumMsg , EnqGen ,
921- init (#{name => size_test })),
923+ init (#{name => size_test ,
924+ machine_version => 0 })),
922925 S1 = run_log (NumMsg , NumMsg + NumCust , CustGen , S0 ),
923926 _ = run_log (NumMsg , NumMsg + NumCust + NumMsg , SetlGen , S1 ),
924927 ok
925928 end ).
926929
927- % profile(File) ->
928- % GzFile = atom_to_list(File) ++ ".gz",
929- % lg:trace([ra_fifo, maps, queue, ra_fifo_index], lg_file_tracer,
930- % GzFile, #{running => false, mode => profile}),
931- % NumMsg = 10000,
932- % NumCust = 500,
933- % EnqGen = fun(N) -> {N, {enqueue, self(), N, N}} end,
934- % Pid = spawn(fun() -> ok end),
935- % CustGen = fun(N) -> {N, {checkout, {auto, NumMsg},
936- % {term_to_binary(N), Pid}}} end,
937- % SetlGen = fun(N) -> {N, {settle, N - NumMsg - NumCust - 1, Pid}} end,
938- % S0 = run_log(1, NumMsg, EnqGen, element(1, init(#{name => size_test}))),
939- % S1 = run_log(NumMsg, NumMsg + NumCust, CustGen, S0),
940- % _ = run_log(NumMsg, NumMsg + NumCust + NumMsg, SetlGen, S1),
941- % lg:stop().
942-
943-
944930run_log (Num , Num , _Gen , State ) ->
945931 State ;
946932run_log (Num , Max , Gen , State0 ) ->
@@ -995,6 +981,7 @@ dehydrate_state(#state{messages = Messages0,
995981
996982test_init (Name ) ->
997983 init (#{name => Name ,
984+ machine_version => 0 ,
998985 shadow_copy_interval => 0 ,
999986 metrics_handler => {? MODULE , metrics_handler , []}}).
1000987
@@ -1243,6 +1230,7 @@ discarded_message_without_dead_letter_handler_is_removed_test() ->
12431230discarded_message_with_dead_letter_handler_emits_mod_call_effect_test () ->
12441231 Cid = {<<" completed_customer_yields_demonitor_effect_test" >>, self ()},
12451232 State00 = init (#{name => test ,
1233+ machine_version => 0 ,
12461234 dead_letter_handler =>
12471235 {somemod , somefun , [somearg ]}}),
12481236 {State0 , _ , [_ , _ ]} = enq (1 , 1 , first , State00 ),
@@ -1430,6 +1418,7 @@ duplicate_delivery_test() ->
14301418state_enter_test () ->
14311419
14321420 S0 = init (#{name => the_name ,
1421+ machine_version => 0 ,
14331422 become_leader_handler => {m , f , [a ]}}),
14341423 [{mod_call , m , f , [a , the_name ]}] = state_enter (leader , S0 ),
14351424 ok .
@@ -1505,7 +1494,7 @@ run_log(InitState, Entries) ->
15051494aux_test () ->
15061495 _ = ra_machine_ets :start_link (),
15071496 Aux0 = init_aux (aux_test ),
1508- MacState = init (#{name => aux_test }),
1497+ MacState = init (#{name => aux_test , machine_version => 0 }),
15091498 Log = undefined ,
15101499 {no_reply , Aux , undefined } = handle_aux (leader , cast , active , Aux0 ,
15111500 Log , MacState ),
0 commit comments