[zeromq-dev] mailbox.cpp Assertion

Chuck Remes lists at chuckremes.com
Mon Jul 9 21:43:08 CEST 2012


On Jul 9, 2012, at 2:17 PM, Thomas S Hatch wrote:

> Yes, they are, here is the code:
> https://github.com/saltstack/salt/blob/develop/salt/minion.py#L470
> 
> I do not doubt that I have made a mistake in here

I see that you are unregistering, closing the socket, and then immediately creating a new socket with the same IDENTITY. 

I did not see any code setting the LINGER option to drop packets, so if a late packet arrives I suppose it could cause that zmq_close() to hang. 

Alternately, reusing the IDENTITY before the socket is completely closed (an async operation) may be a cause. Any chance you can close the socket and then schedule (within your loop) the creation of a replacement socket a few milliseconds later?

These are just two guesses based on 5m review of the code. I hope it sparks an idea or a new avenue to pursue.

cr
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20120709/4e400880/attachment.htm>


More information about the zeromq-dev mailing list