[rabbitmq-discuss] erlang-client problem on OS X (empty_rpc_bottom_half)

Matt Stancliff sysop at mindspring.com
Tue Dec 9 06:37:50 GMT 2008


Rabbits,

I've spent the past two days attempting to track down why the erlang- 
client doesn't work for me on OS X.
Everything works fine on my Linux box.
The Linux and OS X (10.5.5) installs of everything are performed by  
the same automated scripts.

I'm running erlang (R12B-5), rabbitmq-server (tip: cedf2c7e873d) and  
the erlang-client (tip: a9695aaf5083).

The error is reproducible with a one-line  
"lib_amqp:start_channel(lib_amqp:start_connection())" (the same error  
occurs with direct or network clients).

Running through the debugger, the bottom half gets called once  
(correctly) then it gets called again but this time RequestQueue is  
empty.  I haven't been able to track down what is sending messages  
causing handle_method/2 (therefore rpc_bottom_half/2) to get called  
incorrectly.

My OS X rabbitmq install works properly with the http2 client (the  
tests run successfully and the demo apps work).

Any ideas?


The crash and error reports I've been fighting for two days are:
=====
=CRASH REPORT==== 8-Dec-2008::22:14:21 ===
   crasher:
     pid: <0.238.0>
     registered_name: []
     exception exit: empty_rpc_bottom_half
       in function  gen_server:terminate/6
     initial call: amqp_channel:init/1
     ancestors: [<0.237.0>,<0.236.0>]
     messages: []
     links: [<0.239.0>,<0.240.0>,<0.237.0>]
     dictionary: []
     trap_exit: true
     status: running
     heap_size: 610
     stack_size: 23
     reductions: 247
   neighbours:
===
=ERROR REPORT==== 8-Dec-2008::22:14:21 ===
** Generic server <0.242.0> terminating
** Last message in was {send_command,{'channel.flow',false}}
** When Server state == {channel_state,1,<0.241.0>,undefined,<0.243.0>,
                             #Fun<amqp_direct_driver.do.2>,
                             #Fun<amqp_direct_driver.do.3>,
                             #Fun<amqp_direct_driver.close_channel.1>,
                             {[],[]},
                             {[],[]},
                             {dict,0,16,16,8,80,48,
                                 {[],[],[],[],[],[],[],[],[],[],[],[], 
[],[],[],
                                  []},
                                 {{[],[],[],[],[],[],[],[],[],[],[],[], 
[],[],
                                   [],[]}}},
                             false,undefined,
                             {dict,0,16,16,8,80,48,
                                 {[],[],[],[],[],[],[],[],[],[],[],[], 
[],[],[],
                                  []},
                                 {{[],[],[],[],[],[],[],[],[],[],[],[], 
[],[],
                                   [],[]}}}}
** Reason for termination ==
** empty_rpc_bottom_half
=====


Any pointers in the right direction will be greatly appreciated.

Sincerely,

-Matt
-- 
Matt Stancliff                    San Jose, CA
AIM: seijimr              iPhone: 678-591-9337
"The best way to predict the future is to invent it." --Alan Kay





More information about the rabbitmq-discuss mailing list