Closed xsoul closed 6 years ago
That isn't quite right; qu
is "unsent", qs
is "sent"; there's no need to have an active writer (wr
) if the messages have already been sent to the socket. Looking at in
tells us that there are zero bytes available on the inbound socket, so: there's nothing to process - so we shouldn't be concerned by the lack of an active reader (ar
).
From the library's perspective then: it has done its job, and is sat waiting on a response from the server / network. As far as I know, there is nothing the library could have done to help you here: the response bytes simply aren't available.
Options:
slowlog
at the serverI wonder whether we can humanise that message; for example, if it said instead:
Summary: server isn't responding; 6 commands have been sent and are awaiting responses from the server; no data is available to process on the inbound socket.
or
Summary: busy but healthy; 6 commands are waiting to be sent - there is an active writer; 18 commands have been sent and are awaiting responses from the server; 421 bytes are available on the inbound socket - there is an active reader.
Hi mgravell, Thanks for your reply. It would be great if we have more human readable message like what u suggested. I will look into the list of suggestions that you gave.
Thank you again!
We are now including informational (via .Keys
) on the exception as well as including a link to help documentation in the message itself in the current versions of the library. Going to close this out to cleanup :)
Hi, I am using Singleton ConnectionMultiplexer and instantiate IDatabase which is always create-and-forget, everything works fine until my application reach its peak period where there are 120+ clients and 120k key-values in my Redis server, and the server occasionally throw the following exception:
i tried to google around and found that when qs:6 and wr:0, it means that the server have no active writer to process 6 message in the queue, but i don't understand why redis server don't have available writer to process messages.
Thanks for any help. Appreciate.