[erlang-bugs] Twisty turny gen_server hang

Matthew Dempsky <>
Fri Jul 27 20:54:05 CEST 2007

I have a module:


    start_one() ->
        gen_server:start({local, one}, ?MODULE, one, []).
    start_link_two() ->
        gen_server:start_link({local, two}, ?MODULE, two, []).

    init(one) ->
    init(two) ->

When I run ``bloop:start_one()'' from the command-line, it just hangs:

    $ erl
    Erlang (BEAM) emulator version 5.5.5 [source] [async-threads:0]

    Eshell V5.5.5  (abort with ^G)
    1> bloop:start_one().

    (^-- hanging)

Instead I expect it to evaluate to ``{error,{bad_return_value,burlap}}''.

My reasoning: ``bloop:start_link_two()'' causes the calling process to
exit with ``{bad_return_value,burlap}'', and if I change ``init(one)''
to just ``exit({bad_return_value,burlap})'', that is the return value
for ``bloop:start_one()''.

More information about the erlang-bugs mailing list