Re: inets stand_alone mode
Anthony Ramine <[email protected]>
| Newsgroups | gmane.comp.lang.erlang.bugs |
|---|---|
| Message-ID | <[email protected]> |
Le 4 août 2014 à 11:28, Ingela Anderton Andin <[email protected]> a écrit : > Hi! > > On 07/30/2014 09:37 PM, Michael Truog wrote: >> Hi, >> >> I ran into a problem that exists in 17.1.2 with inets between inets mode >> and stand_along mode with httpc: >> >> This works: >> 1> application:start(inets). >> ok >> 2> inets:start(httpc, [{profile, foobar}], inets). >> {ok,<0.53.0>} >> 3> inets:start(httpc, [{profile, foobar}], inets). >> {error,{already_started,<0.53.0>}} >> >> This is the problem (unable to use a try/catch to get the exit, since >> that is within an inets process): >> 1> inets:start(httpc, [{profile, foobar}], stand_alone). >> {ok,<0.35.0>} >> 2> inets:start(httpc, [{profile, foobar}], stand_alone). > > > You are trying to start the same profile twice that will not work fine. > You can start a profile and then access that profile from different processes, but you can only start a profile once. A profile should be viewed in the same way as an incognito windows in chrome. > > > Regards Ingela Erlang/OTP Team - Ericsson AB > > >> >> =ERROR REPORT==== 30-Jul-2014::12:24:22 === >> ** Generic server <0.35.0> terminating >> ** Last message in was {'EXIT',<0.33.0>, >> {'EXIT', >> {badarg, >> [{ets,new, >> [stand_alone_foobar__session_db, >> [public,set,named_table,{keypos,2}]], >> []}, >> {httpc_manager,do_init,2, >> [{file,"httpc_manager.erl"},{line,421}]}, >> {httpc_manager,init,1, >> [{file,"httpc_manager.erl"},{line,406}]}, >> {gen_server,init_it,6, >> [{file,"gen_server.erl"},{line,306}]}, >> {proc_lib,init_p_do_apply,3, >> [{file,"proc_lib.erl"},{line,239}]}]}}} >> ** When Server state == {state,[],stand_alone_foobar__handler_db, >> {cookie_db,undefined,16402}, >> stand_alone_foobar__session_db,stand_alone_foobar, >> {options, >> {undefined,[]}, >> {undefined,[]}, >> 0,2,5,120000,2,disabled,false,inet,default, >> default,[]}} >> ** Reason for termination == >> ** {'EXIT',{badarg,[{ets,new, >> [stand_alone_foobar__session_db, >> [public,set,named_table,{keypos,2}]], >> []}, >> {httpc_manager,do_init,2, >> [{file,"httpc_manager.erl"},{line,421}]}, >> {httpc_manager,init,1, >> [{file,"httpc_manager.erl"},{line,406}]}, >> {gen_server,init_it,6, >> [{file,"gen_server.erl"},{line,306}]}, >> {proc_lib,init_p_do_apply,3, >> [{file,"proc_lib.erl"},{line,239}]}]}} >> ** exception exit: {'EXIT', >> {badarg, >> [{ets,new, >> [stand_alone_foobar__session_db, >> [public,set,named_table,{keypos,2}]], >> []}, >> {httpc_manager,do_init,2, >> [{file,"httpc_manager.erl"},{line,421}]}, >> {httpc_manager,init,1, >> [{file,"httpc_manager.erl"},{line,406}]}, >> {gen_server,init_it,6, >> [{file,"gen_server.erl"},{line,306}]}, >> {proc_lib,init_p_do_apply,3, >> [{file,"proc_lib.erl"},{line,239}]}]}} >> >> I am not sure if this was a known issue, but it should be a bug, since >> it seems valid that two standalone Erlang processes might use the same >> httpc profile data in ets. >> >> Thanks, >> Michael Still, shouldn't a proper already_started error be returned instead of crashing in the middle of nowhere? Regards, Anthony. _______________________________________________ erlang-bugs mailing list [email protected] http://erlang.org/mailman/listinfo/erlang-bugs