You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "jeet parmar (JIRA)" <ji...@apache.org> on 2015/05/17 15:30:00 UTC
[jira] [Reopened] (THRIFT-3159) Thrift erlang thrift_socket_server
crashes
[ https://issues.apache.org/jira/browse/THRIFT-3159?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
jeet parmar reopened THRIFT-3159:
---------------------------------
I don think so [~radekg]
When i run server:unexportedmod() before starting the server:start() erlang gives me exception error: undefined function server:unexportedmod/0 so later i started another erlang application for eg. erlang based web server YAWS which has modules implementing behaviour gen_server it does not crash it just throws exception without crashing the gen server
in other word
App1 - thrift which has thrift_socket_server implmenting gen_server bhvioir . when i pass the bad arg to exported module thrift_socket_server:acceptor_loop(asd,awea) or use unexported module thrift_socket_server:asdasd() it crashed the gen-server
App2 - YAWS - which has yaws_pam as gen_erver when started and if pass bad arg to exported module or (yaws_pam:auth(asdasd) or use unexported module yaws_pam:asdasd() it DOES NOT CRASH yaws_pam the gen-server instead gives exception error: undefined function yaws_pam:asdasd/0
Hope i was clear this time.
> Thrift erlang thrift_socket_server crashes
> ------------------------------------------
>
> Key: THRIFT-3159
> URL: https://issues.apache.org/jira/browse/THRIFT-3159
> Project: Thrift
> Issue Type: Bug
> Components: Erlang - Library
> Affects Versions: 0.9.2, 0.9.3, 1.0
> Environment: Linux clean.bandit 3.19.5-200.fc21.x86_64 #1 SMP Mon Apr 20 19:51:56 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
> cat /etc/fedora-release Fedora release 21 (Twenty One)
> erl -version Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 6.3
> ➜ thrifter erl
> Erlang/OTP 17 [erts-6.3] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false]
> Eshell V6.3 (abort with ^G)
> 1>
> Reporter: jeet parmar
> Fix For: 0.9.3
>
>
> Using tutorial.thrift and tutorial for Erlang, when I am using any unexported module it crashes the app and genserver. Instead, it should not crash and report an error.
> I used https://git1-us-west.apache.org/repos/asf?p=thrift.git;a=tree;f=tutorial/erl;h=a8821bf47084a57e9f6526ed49212d7c7663f8fc;hb=HEAD
> for the server.erl source
> {code}
> Erlang/OTP 17 [erts-6.3] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:true]
> Eshell V6.3 (abort with ^G)
> 1> server:start().
> {ok,<0.34.0>}
> =INFO REPORT==== 16-May-2015::17:41:27 ===
> thrift service listening on port 99992> server:unexportedmod().
> =ERROR REPORT==== 16-May-2015::17:41:59 ===
> ** Generic server tutorial_server terminating
> ** Last message in was {'EXIT',<0.32.0>,
> {undef,
> [{server,unexportedmod,[],[]},
> {erl_eval,do_apply,6,
> [{file,"erl_eval.erl"},{line,661}]},
> {shell,exprs,7,
> [{file,"shell.erl"},{line,684}]},
> {shell,eval_exprs,7,
> [{file,"shell.erl"},{line,639}]},
> {shell,eval_loop,3,
> [{file,"shell.erl"},{line,624}]}]}}
> ** When Server state == {thrift_socket_server,9999,calculator_thrift,server,
> {local,tutorial_server},
> 2048,any,#Port<0.732>,<0.35.0>,
> [{recv_timeout,500}],
> false}
> ** Reason for termination ==
> ** {'function not exported',
> [{server,unexportedmod,[],[]},
> {erl_eval,do_apply,6,[{file,"erl_eval.erl"},{line,661}]},
> {shell,exprs,7,[{file,"shell.erl"},{line,684}]},
> {shell,eval_exprs,7,[{file,"shell.erl"},{line,639}]},
> {shell,eval_loop,3,[{file,"shell.erl"},{line,624}]}]}
> ** exception error: undefined function server:unexportedmod/0
> 3>
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)