[zeromq-dev] Possible bug in ZMQ HWM handling?

Francesco francesco.montorsi at gmail.com
Fri Aug 31 18:54:14 CEST 2018


Hi all,
I spent quite a bit of time to look into a weird issue.
Here's my setup:
     1 PUB socket  connected to a STEERABLE PROXY FRONTED socket, using
INPROC transport
     1 SUB socket  connected to the STEERABLE PROXY BACKEND socket, using
TCP transport

Before starting stuff (i.e. calling zmq_connect() or zmq_bind()) I lower
all HWMs (for both TX/RX) of all sockets to just "10".  Moreover I set
ZMQ_XPUB_NODROP=1.
Now my expected behaviour is that after 20 messages sent from the PUB
socket, the zmq_send() on that PUB becomes blocking.
You may argue that since I have the XPUB/XSUB sockets of the proxy in the
middle, the value after it becomes blocking is 40. That's ok.

The experimental result I found is that the PUB NEVER becomes blocking.
If I send 10000 messages from the PUB they all go through.
In the SUB I sleep 1 second after EVERY message received. It takes a while
but in the end the SUB receives all the 10000 messages...

Is there an explanation for this? Who buffered all those messages (against
my will) ?

Thanks for any hint!
Francesco
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20180831/01cf047d/attachment.htm>


More information about the zeromq-dev mailing list