<div dir="ltr">Gday All<div><br></div><div>Just wanted to see if others are having similar issues with RabbitMQ and MQTT.</div><div><br></div><div>Firstly we are seeing a lot of errors around duplicate client-ids, after debugging this a few times it seemed there were orphaned or somehow retained connections which aren't showing in the standard rabbitmq session list.</div>
<div><br></div><div>These connections are somehow leading to the newer connection being kicked off, like a routine is kicking off the oldest connection for a given client, where there is only one..</div><div><br></div><div>
We are also getting these traces from time to time (see below).</div><div><br></div><div>I saw there is some pretty significant work going on around the MQTT plugin, is this related to any of the symptoms I described?</div>
<div><br></div><div>Lastly as you can see in the trace we are running an SSL proxy in front of RabbitMQ.<br></div><div><br></div><div><div>=ERROR REPORT==== 7-May-2014::14:11:25 ===</div><div>** Generic server <0.710.30> terminating</div>
<div>** Last message in was {inet_async,#Port<0.567958>,12806,</div><div>                           {ok,<<16,69,0,6,77,81,73,115,100,112,3,194,0,30,0,</div><div>                                 20,52,57,51,45,54,66,67,66,50,66,68,67,49,</div>
<div>                                 53,65,48,56,67,56,68,0,7,115,116,114,101,97,</div><div>                                 109,115,0,24,72,97,118,106,101,114,104,111,</div><div>                                 70,114,97,110,74,111,103,114,121,111,99,78,</div>
<div>                                 111,110,115,55>>}}</div><div>** When Server state == {state,#Port<0.567958>,</div><div>                            "<a href="http://127.0.0.1:34267">127.0.0.1:34267</a> -> <a href="http://127.0.0.1:2883">127.0.0.1:2883</a>",true,running,</div>
<div>                            {none,<0.731.30>},</div><div>                            <0.711.30>,false,none,</div><div>                            {proc_state,#Port<0.567958>,</div><div>                                {dict,4,16,16,8,80,48,</div>
<div>                                    {[],[],[],[],[],[],[],[],[],[],[],[],[],</div><div>                                     [],[],[]},</div><div>                                    {{[["$bkt/c884c1f687e7a3227666d1...",1]],</div>
<div>                                      [],[],[],[],[],[],</div><div>                                      [["$bkt/c884c1f687e7a32...",1]],</div><div>                                      [],[],[],</div><div>
                                      [["$bkt/c884c1f687e...",1]],</div><div>                                      [],</div><div>                                      [["$bkt/c884c1f68...",0]],</div><div>
                                      [],[]}}},</div><div>                                {<<"amq.ctag-6D0VFf1CiAX92MduztwyMQ">>,</div><div>                                 <<"amq.ctag-xsYcdvDhFzF7PROcEpeYgA">>},</div>
<div>                                {0,nil},</div><div>                                {0,nil},</div><div>                                undefined,2,"493-6BCB2BDC15A08C8D",true,</div><div>                                undefined,</div>
<div>                                {<0.721.30>,undefined},</div><div>                                <0.715.30>,<<"amq.topic">>}}</div><div>** Reason for termination ==</div><div>** {function_clause,</div>
<div>       [{rabbit_mqtt_processor,process_login,</div><div>            [<<"useraccounthere">>,<<"XXXXXXX">>,3,</div><div>             {proc_state,#Port<0.567958>,</div><div>
                 {dict,4,16,16,8,80,48,</div><div>                     {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},</div><div>                     {{[["$bkt/c884...",1]],</div><div>                       [],[],[],[],[],[],</div>
<div>                       [["$blo...",1]],</div><div>                       [],[],[],</div><div>                       [["...",1]],</div><div>                       [],</div><div>                       [["...",0]],</div>
<div>                       [],[]}}},</div><div>                 {<<"amq.ctag-6D0VFf1CiAX92MduztwyMQ">>,</div><div>                  <<"amq.ctag-xsYcdvDhFzF7PROcEpeYgA">>},</div>
<div>                 {0,nil},</div><div>                 {0,nil},</div><div>                 undefined,2,"493-6BCB2BDC15A08C8D",true,undefined,</div><div>                 {<0.721.30>,undefined},</div><div>
                 <0.715.30>,<<"amq.topic">>}],</div><div>            []},</div><div>        {rabbit_mqtt_processor,process_request,3,[]},</div><div>        {rabbit_mqtt_reader,process_received_bytes,2,[]},</div>
<div>        {gen_server2,handle_msg,2,[]},</div><div>        {proc_lib,wake_up,3,[{file,"proc_lib.erl"},{line,237}]}]}</div><div><br></div><div>=ERROR REPORT==== 7-May-2014::14:11:25 ===</div><div>** Generic server <0.715.30> terminating</div>
<div>** Last message in was {'EXIT',<0.710.30>,</div><div>                        {function_clause,</div><div>                         [{rabbit_mqtt_processor,process_login,</div><div>                           [<<"useraccounthere">>,<<"XXXXXXX">>,3,</div>
<div>                            {proc_state,#Port<0.567958>,</div><div>                             {dict,4,16,16,8,80,48,</div><div>                              {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],</div>
<div>                               []},</div><div>                              {{[["$b...",1]],</div><div>                                [],[],[],[],[],[],</div><div>                                [["...",1]],</div>
<div>                                [],[],[],</div><div>                                [["...",'...']],</div><div>                                [],</div><div>                                [['...']],</div>
<div>                                [],[]}}},</div><div>                             {<<"amq.ctag-6D0VFf1CiAX92MduztwyMQ">>,</div><div>                              <<"amq.ctag-xsYcdvDhFzF7PROcEpeYgA">>},</div>
<div>                             {0,nil},</div><div>                             {0,nil},</div><div>                             undefined,2,"493-6BCB2BDC15A08C8D",true,</div><div>                             undefined,</div>
<div>                             {<0.721.30>,undefined},</div><div>                             <0.715.30>,<<"amq.topic">>}],</div><div>                           []},</div><div>                          {rabbit_mqtt_processor,process_request,3,[]},</div>
<div>                          {rabbit_mqtt_reader,process_received_bytes,2,[]},</div><div>                          {gen_server2,handle_msg,2,[]},</div><div>                          {proc_lib,wake_up,3,</div><div>                           [{file,"proc_lib.erl"},{line,237}]}]}}</div>
<div>** When Server state == {state,amqp_direct_connection,</div><div>                         {state,rabbit@somehostsomewhere,</div><div>                          {user,<<"useraccounthere">>,</div><div>
                           [whatever],</div><div>                           rabbit_auth_backend_internal,</div><div>                           {internal_user,<<"useraccounthere">>,</div><div>                            <<161,99,227,145,114,48,147,95,100,75,53,57,61,183,</div>
<div>                              253,109,128,232,30,86>>,</div><div>                            [whatever]}},</div><div>                          <<"/">>,</div><div>                          {amqp_params_direct,<<"useraccounthere">>,</div>
<div>                           <<"XXXXXXX">>,<<"/">>,</div><div>                           rabbit@somehostsomewhere,</div><div>                           {amqp_adapter_info,</div>
<div>                            {0,0,0,0,0,65535,32512,1},</div><div>                            2883,</div><div>                            {0,0,0,0,0,65535,32512,1},</div><div>                            34267,<<"<a href="http://127.0.0.1:34267">127.0.0.1:34267</a> -> <a href="http://127.0.0.1:2883">127.0.0.1:2883</a>">>,</div>
<div>                            {'MQTT',"3"},</div><div>                            [{ssl,false}]},</div><div>                           []},</div><div>                          {amqp_adapter_info,</div>
<div>                           {0,0,0,0,0,65535,32512,1},</div><div>                           2883,</div><div>                           {0,0,0,0,0,65535,32512,1},</div><div>                           34267,<<"<a href="http://127.0.0.1:34267">127.0.0.1:34267</a> -> <a href="http://127.0.0.1:2883">127.0.0.1:2883</a>">>,</div>
<div>                           {'MQTT',"3"},</div><div>                           [{ssl,false}]},</div><div>                          <0.718.30>,undefined},</div><div>                         <0.717.30>,</div>
<div>                         {amqp_params_direct,<<"useraccounthere">>,</div><div>                          <<"XXXXXXX">>,<<"/">>,</div><div>                          rabbit@somehostsomewhere,</div>
<div>                          {amqp_adapter_info,</div><div>                           {0,0,0,0,0,65535,32512,1},</div><div>                           2883,</div><div>                           {0,0,0,0,0,65535,32512,1},</div>
<div>                           34267,<<"<a href="http://127.0.0.1:34267">127.0.0.1:34267</a> -> <a href="http://127.0.0.1:2883">127.0.0.1:2883</a>">>,</div><div>                           {'MQTT',"3"},</div>
<div>                           [{ssl,false}]},</div><div>                          []},</div><div>                         0,</div><div>                         [{<<"capabilities">>,table,</div><div>
                           [{<<"publisher_confirms">>,bool,true},</div><div>                            {<<"exchange_exchange_bindings">>,bool,true},</div><div>                            {<<"basic.nack">>,bool,true},</div>
<div>                            {<<"consumer_cancel_notify">>,bool,true},</div><div>                            {<<"connection.blocked">>,bool,true},</div><div>                            {<<"consumer_priorities">>,bool,true},</div>
<div>                            {<<"authentication_failure_close">>,bool,true}]},</div><div>                          {<<"cluster_name">>,longstr,<<"rabbit@somehostsomewhere">>},</div>
<div>                          {<<"copyright">>,longstr,</div><div>                           <<"Copyright (C) 2007-2013 GoPivotal, Inc.">>},</div><div>                          {<<"information">>,longstr,</div>
<div>                           <<"Licensed under the MPL.  See <a href="http://www.rabbitmq.com/">http://www.rabbitmq.com/</a>">>},</div><div>                          {<<"platform">>,longstr,<<"Erlang/OTP">>},</div>
<div>                          {<<"product">>,longstr,<<"RabbitMQ">>},</div><div>                          {<<"version">>,longstr,<<"3.3.0">>}],</div>
<div>                         none,false}</div><div>** Reason for termination ==</div><div>** {unexpected_msg,</div><div>       {'EXIT',<0.710.30>,</div><div>           {function_clause,</div><div>               [{rabbit_mqtt_processor,process_login,</div>
<div>                    [<<"useraccounthere">>,<<"XXXXXXX">>,3,</div><div>                     {proc_state,#Port<0.567958>,</div><div>                         {dict,4,16,16,8,80,48,</div>
<div>                             {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},</div><div>                             {{[["...",1]],</div><div>                               [],[],[],[],[],[],</div><div>                               [['...']],</div>
<div>                               [],[],[],</div><div>                               ['...'],</div><div>                               [],</div><div>                               ['...'],</div><div>                               [],[]}}},</div>
<div>                         {<<"amq.ctag-6D0VFf1CiAX92MduztwyMQ">>,</div><div>                          <<"amq.ctag-xsYcdvDhFzF7PROcEpeYgA">>},</div><div>                         {0,nil},</div>
<div>                         {0,nil},</div><div>                         undefined,2,"493-6BCB2BDC15A08C8D",true,undefined,</div><div>                         {<0.721.30>,undefined},</div><div>                         <0.715.30>,<<"amq.topic">>}],</div>
<div>                    []},</div><div>                {rabbit_mqtt_processor,process_request,3,[]},</div><div>                {rabbit_mqtt_reader,process_received_bytes,2,[]},</div><div>                {gen_server2,handle_msg,2,[]},</div>
<div>                {proc_lib,wake_up,3,[{file,"proc_lib.erl"},{line,237}]}]}}}</div><div><br></div><div>=WARNING REPORT==== 7-May-2014::14:11:25 ===</div><div>MQTT disconnect from "493-6BCB2BDC15A08C8D"</div>
</div><div><br></div><div><div><br></div>-- <br>Regards,<br><br>Mark Wolfe<br><br>--<br>I am not young enough to know everything.<br>--
</div></div>