'Connect' don't have a requestId, but can give an 'Error'. The 'Error' has a requestId, but it is just set to max. This fix will ensure that the first command 'Connect' gets coupled with a possible 'Error' message.
diff --git a/src/DotPulsar/Internal/RequestResponseHandler.cs b/src/DotPulsar/Internal/RequestResponseHandler.cs
index 8d11e95..63277d9 100644
--- a/src/DotPulsar/Internal/RequestResponseHandler.cs
+++ b/src/DotPulsar/Internal/RequestResponseHandler.cs
@@ -6,6 +6,8 @@
 {
     public sealed class RequestResponseHandler : IDisposable
     {
+        private const string ConnectResponseIdentifier = "Connected";
+
         private readonly Awaitor<string, BaseCommand> _responses;
         private ulong _requestId;
 
@@ -64,16 +66,16 @@
             }
         }
 
-        private static string GetResponseIdentifier(BaseCommand cmd)
+        private string GetResponseIdentifier(BaseCommand cmd)
         {
             switch (cmd.CommandType)
             {
                 case BaseCommand.Type.Connect:
-                case BaseCommand.Type.Connected: return "Connected";
+                case BaseCommand.Type.Connected: return ConnectResponseIdentifier;
                 case BaseCommand.Type.Send: return cmd.Send.ProducerId.ToString() + '-' + cmd.Send.SequenceId.ToString();
                 case BaseCommand.Type.SendError: return cmd.SendError.ProducerId.ToString() + '-' + cmd.SendError.SequenceId.ToString();
                 case BaseCommand.Type.SendReceipt: return cmd.SendReceipt.ProducerId.ToString() + '-' + cmd.SendReceipt.SequenceId.ToString();
-                case BaseCommand.Type.Error: return cmd.Error.RequestId.ToString();
+                case BaseCommand.Type.Error: return _requestId == 1 ? ConnectResponseIdentifier : cmd.Error.RequestId.ToString();
                 case BaseCommand.Type.Producer: return cmd.Producer.RequestId.ToString();
                 case BaseCommand.Type.ProducerSuccess: return cmd.ProducerSuccess.RequestId.ToString();
                 case BaseCommand.Type.CloseProducer: return cmd.CloseProducer.RequestId.ToString();