Resource Temporarily Unavailable

Description

I always get "Resource temporarily unavailable" when doing zmq_sendmsg() on PAIR/INPROC socket with rc == 8 and zmq_errno() == 11.

Here's what I've tried to mitigate that issue thinking that it might be the case
where the I/O threads don't have enough time to connect and send the message
(which if it was the case, which is not, should be handled internally).

  • I've added sleep(1) before zmq_sendmsg(). [no effect]

  • Added sleep(1) between bind() and connect(). [no effect]

  • Done both above. [no effect]

  • Applied the above for TCP. [no effect]

  • Applied all of the above for most socket types (e.g. REQ/REP, PUB/SUB,
    PUSH/PULL). [no effect]

I've attached a unit test to reproduce that issue.

Environment

Linux v3.0.0-12-generic
GCC v4.6.1
x86_64/amd64

Attachments

1
  • 28 Nov 2011, 04:04 AM

Activity

Show:

Amr Ali November 28, 2011 at 5:17 AM

Apologies for the confusion but after debugging further, I've found that the implementation of zmq_sendmsg has changed considerably and now zmq_sendmsg returns the number of bytes sent if successful instead of 0. And it is documented in the man pages.

Won't Fix

Details

Assignee

Reporter

Components

Fix versions

Affects versions

Priority

Created November 28, 2011 at 4:04 AM
Updated November 28, 2011 at 5:17 AM
Resolved November 28, 2011 at 5:17 AM