[zeromq-dev] last message lost in pipeline

Tomaz Beltram tomaz.beltram at topit.si
Wed Jan 27 13:58:54 CET 2016


I am using the pipeline pattern with one PULL socket with zmq_bind() to
an arbitrary port on the localhost interface (tcp://*) and one
PUSH socket with zmq_connect() to the port that was assigned by the system.

The sender may finish and call zmq_close() and zmq_ctx_destroy() before
the receiver gets all messages that were sent. This should be OK, since
according to the documentation zmq_close() should wait for undelivered
messages to be transferred.

Very rarely I observe that the last message that was sent is never
received. I was not able to reproduce the issue with a minimum test case
that I prepared and even in the real application its occurrence is very
seldom. Still I would like to track it down and avoid if possible. Any
ideas what I should do differently?


More information about the zeromq-dev mailing list