[ https://issues.apache.org/jira/browse/THRIFT-2528?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13994482#comment-13994482 ]
Alexey Radkov edited comment on THRIFT-2528 at 5/11/14 9:12 AM: ---------------------------------------------------------------- the patch attached was (Author: lyokha): the patch > Thrift Erlang Library: Multiple thrift applications in one bundle > ----------------------------------------------------------------- > > Key: THRIFT-2528 > URL: https://issues.apache.org/jira/browse/THRIFT-2528 > Project: Thrift > Issue Type: Bug > Components: Erlang - Library > Reporter: Alexey Radkov > Priority: Minor > Attachments: thrift-appreg.patch > > > Probably this is rather a wish than a bug. Also i found the multiplex task > for Erlang [https://issues.apache.org/jira/browse/THRIFT-2110] that relates > to this but seems to be slightly different. > I need two thrift applications running in one bundle: a library API, say > _rsappapi_ and a test API _rstestapi_: the former is needed to set up the > library API configuration via thrift calls. Currently it is not feasible > because thrift application registers in {{start_link()}} with predefined name > in {{lib/erl/src/thrift_server.erl}}: > {code} > gen_server:start_link({local, ?SERVER}, ?MODULE, {Port, Service, > HandlerModule}, []). > {code} > and i got {{already_started}} exception: > {noformat} > =PROGRESS REPORT==== 11-May-2014::12:26:32 === > application: rsappapi > started_at: rstestapi@desktop > =SUPERVISOR REPORT==== 11-May-2014::12:26:32 === > Supervisor: {local,rstestapi_sup} > Context: start_error > Reason: {already_started,<0.53.0>} > Offender: [{pid,undefined}, > {name,rstestapi_service}, > {mfargs,{rstestapi_service,start_link,[]}}, > {restart_type,permanent}, > {shutdown,2000}, > {child_type,worker}] > =CRASH REPORT==== 11-May-2014::12:26:32 === > crasher: > initial call: application_master:init/4 > pid: <0.55.0> > registered_name: [] > exception exit: {{shutdown, > {failed_to_start_child,rstestapi_service, > {already_started,<0.53.0>}}}, > {rstestapi_app,start,[normal,[]]}} > in function application_master:init/4 (application_master.erl, line > 133) > ancestors: [<0.54.0>] > messages: [{'EXIT',<0.56.0>,normal}] > links: [<0.54.0>,<0.7.0>] > dictionary: [] > trap_exit: true > status: running > heap_size: 610 > stack_size: 27 > reductions: 130 > neighbours: > =INFO REPORT==== 11-May-2014::12:26:33 === > application: rstestapi > exited: {{shutdown, > {failed_to_start_child,rstestapi_service, > {already_started,<0.53.0>}}}, > {rstestapi_app,start,[normal,[]]}} > type: temporary > {noformat} > I attached a patch that fixes this issue for me. It just replaces constant > {{?SERVER}} with the variable {{Service}} which normally has > well-distinguished name like _tSomeService_thrift_ and should not mess in > Erlang applications names. -- This message was sent by Atlassian JIRA (v6.2#6252)