I have examined RabbitMQ .NET client library source codes, and I think I have managed to identify this bug.<div><br></div><div>What is happening is at the moment &nbsp;ModelBase.BasicGet&nbsp;call is made ModelBase.m_closeReason is not null (model was closed)</div><div>The code inside ModelBase.BasicGet doesn't Enqueue&nbsp;BasicGetRpcContinuation because m_closeReason &nbsp;is not null</div><div>but send this command to server using&nbsp;_Private_BasicGet(), this method checks ModelBase.m_sessions.m_closeReason which is not null, and then when server reply is received command handler for BasicGetEmpty tries to dequeue (calls Next()) item from&nbsp;m_continuationQueue in which BasicGetRpcContinuation &nbsp;wasn't put.</div><div><br>On Wednesday, July 31, 2013 3:38:42 PM UTC+4, inforser....@gmail.com wrote:<blockquote class="gmail_quote" style="margin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div>{AMQP close-reason, initiated by Library, code=541, text="Unexpected Exception", classId=0, methodId=0, cause=System.<wbr>NullReferenceException: Object reference not set to an instance of an object.</div><div>&nbsp; &nbsp;at RabbitMQ.Client.Impl.<wbr>ModelBase.HandleBasicGetEmpty(<wbr>)</div><div>&nbsp; &nbsp;at RabbitMQ.Client.Framing.Impl.<wbr>v0_9_1.Model.<wbr>DispatchAsynchronous(Command cmd)</div><div>&nbsp; &nbsp;at RabbitMQ.Client.Impl.<wbr>ModelBase.HandleCommand(<wbr>ISession session, Command cmd)</div><div>&nbsp; &nbsp;at RabbitMQ.Client.Impl.<wbr>SessionBase.OnCommandReceived(<wbr>Command cmd)</div><div>&nbsp; &nbsp;at RabbitMQ.Client.Impl.Session.<wbr>HandleFrame(Frame frame)</div><div>&nbsp; &nbsp;at RabbitMQ.Client.Impl.<wbr>ConnectionBase.<wbr>MainLoopIteration()</div><div>&nbsp; &nbsp;at RabbitMQ.Client.Impl.<wbr>ConnectionBase.MainLoop()}</div></blockquote></div>