[zeromq-dev] debugging a frozen zeromq ipc socket
Sandeep Joshi
sanjos100 at gmail.com
Thu May 29 12:46:24 CEST 2014
I am using the FreeLance pattern described in the Chapter 4 of the guide.
Running zeromq-3.2.3.
Within a process, there are many threads using REQ sockets connected
over an internal pipe (ipc://) to a ROUTER socket (ipc://) which in
turn resends the requests to another process using another ROUTER
socket (tcp://)
The pipeline chugs along fine, but occassionally it hangs and "ss -t"
shows that the Send-Q on the sender is frozen and the retransmission
timeouts keep rising.
State Recv-Q Send-Q Local Address:Port Peer Address:Port
ESTAB 0 13670 192.168.2.110:47796 192.168.2.160:55550
The packets are not getting sent out to the other process which sits idle.
I suspect some concurrency problem within the application is causing this hang.
How do I dump the state of those internal pipes (REQ-ROUTER) sockets
using some standard Unix command or some internal zeromq function ?
Is there any way to dump the messages which are stuck in that send queue ?
-Sandeep
More information about the zeromq-dev
mailing list