Uploaded image for project: 'Thrift'
  1. Thrift
  2. THRIFT-3159

Thrift erlang thrift_socket_server crashes

    XMLWordPrintableJSON

Details

    • Question
    • Status: Reopened
    • Major
    • Resolution: Unresolved
    • 0.9.2, 0.9.3
    • None
    • Erlang - Library
    • None

    Description

      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

      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> 
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            nsaoly jeet parmar
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated: