title: RedisResponseException from BlockingDequeue
body: <p>I am getting what looks like a timeout exception when using a BlockingDequeue on a RedisTypedClient. </p>
  
  <p>The calling code looks like </p>
  
  <pre><code> using (var client = ClientPool.GetClient())
      return client.As&lt;TMessage&gt;().Lists[_channel].BlockingDequeue(timeout);
  </code></pre>
  
  <p>Where the timeout is set to 0 and the ClientPool is a PooledRedisClientManager.</p>
  
  <p>The stack trace looks like </p>
  
  <pre><code>ServiceStack.Redis.RedisResponseException: No more data, sPort: 51100, LastCommand: 
     at ServiceStack.Redis.RedisNativeClient.CreateResponseError(String error)
     at ServiceStack.Redis.RedisNativeClient.ReadMultiData()
     at ServiceStack.Redis.RedisNativeClient.SendExpectMultiData(Byte[][] cmdWithBinaryArgs)
     at ServiceStack.Redis.RedisNativeClient.BRPop(String listId, Int32 timeOutSecs)
     at ServiceStack.Redis.Generic.RedisTypedClient`1.BlockingDequeueItemFromList(IRedisList`1 fromList, Nullable`1 timeOut)
     at ServiceStack.Redis.Generic.RedisClientList`1.BlockingDequeue(Nullable`1 timeOut)
  </code></pre>
  
  <p>From what I can find, this is an issue with the client holding an open connection. I thought this was supposed to be fixed by using the PooledRedisClientManager, but it seems to still happen. The issue is easy to reproduce. Simply call the BlockingDequeue method and wait about 2-3 minutes and the exception throws.</p>