Open brigadier opened 10 years ago
When hanoidb is started supervised like
init([]) -> RestartStrategy = one_for_one, MaxRestarts = 1, MaxSecondsBetweenRestarts = 10, SupFlags = {RestartStrategy, MaxRestarts, MaxSecondsBetweenRestarts}, Restart = transient, Shutdown = 2000, Type = worker, AChild = {hanoidb, {hanoidb, open_link, [{local, hanoi_process}, "somedir.hanoi", []]}, Restart, Shutdown, Type, [hanoidb]}, {ok, {SupFlags, [AChild]}}
it crashes when application getting stopped by q() with
q()
[error] Undefined:Undefined crash: exit:shutdown [{plain_fsm,parent_EXIT,2,[{file,"src/plain_fsm.erl"},{line,508}]},{hanoidb_level,initialize,1,[{file,"src/hanoidb_level.erl"},{line,156}]},{proc_lib,init_p,3,[{file,"proc_lib.erl"},{line,222}]}]
error. There's no error if it gets stopped with hanoidb:close(hanoi_process). prior to q().
hanoidb:close(hanoi_process).
I think supervised processes should stop gracefully without manual actions.
Feel free to enlighten me as to how this should best be fixed.
When hanoidb is started supervised like
it crashes when application getting stopped by
q()
witherror. There's no error if it gets stopped with
hanoidb:close(hanoi_process).
prior toq()
.I think supervised processes should stop gracefully without manual actions.