[zeromq-dev] using zmq socket fd with epoll

Luca Boccassi luca.boccassi at gmail.com
Fri Jun 26 17:04:30 CEST 2020


On Fri, 26 Jun 2020 at 14:53, Rajiv Shukla <rajiv at edgestreamlp.com> wrote:
> Hi,
> We have been grappling with a zmq issue that I was hoping might ring a bell here on the dev list.
> - We are using zmq in a python app.
> - We have a receiver that opens a socket of type zmq.PAIR via context.socket(zmq.PAIR)
> - We have an epoll_wait based event loop in our app where we monitor this zmq socket for input activity.
> - The zmq socket fd is found via socket.get(zmq.FD) - The issue we are having is that often epoll_wait sees no activity on the socket fd even though we know a message was received. In order to investigate further, we ran strace on the application and found that what we call is zmq socket fd is an [eventfd] type of descriptor and a notification using this descriptor is sent from the zmq i/o thread by writing 8 bytes to it. This triggers our own eventloop to return from epoll_wait. From time to time, however, it appears that the zmq i/o thread does not write to this descriptor until multiple messages have been received which causes our own eventloop to not get notification of data arrival in time.
> Does this ring a bell? Any idea what might be going on or how we can solve this? I'll be happy to provide more info.
> Thanks. -- Rajiv
> The information transmitted is intended only for the person(s) or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. Email transmission cannot be guaranteed to be secure or error-free.
> This information is not intended and should not be construed as investment, tax or legal advice or an offer or solicitation to buy or sell any security. Any offer or solicitation for any private investment fund advised by Edgestream Partners, L.P. or any of its affiliates may only be made by delivery of its confidential offering documents to qualified investors.
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> https://lists.zeromq.org/mailman/listinfo/zeromq-dev

More information about the zeromq-dev mailing list