-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cannot use single-socket devices anymore #1428
Comments
To be fair, the single-socket behavior isn't documented and isn't covered On Fri, Jun 5, 2015 at 11:22 PM, Min RK notifications@github.com wrote:
|
@hintjens it's been in the pyzmq test suite for a few years, so I cannot update pyzmq to work with libzmq > 4.0.5 until this is fixed. |
I'll work on a patch to fix libzmq, but would it be possible to revert the POLLOUT check for 4.0.x, so I have a little more time to figure out a workaround for supporting 4.1? |
OK, a few thoughts here. First, it should be trivial to fix (if frontend == backend, don't expect Second, the same problem should be affecting 4.1 and libzmq, so 4.0.x may Third, this change sat on zeromq4-x master for over a month... I'm puzzled So I assume you're not running the PyZMQ test suite on the masters, only on Other bindings like CZMQ run Travis CI on the git masters of libzmq, If it's impossible to run the PyZMQ tests like this, then I'd suggest that On Sat, Jun 6, 2015 at 12:23 AM, Min RK notifications@github.com wrote:
|
If that's the right fix, I'll put together a patch.
I was mainly talking about 4.0 as a temporary measure, in case the behavior should stay exactly as-is in 4.1, libzmq. If the above fix makes sense, then definitely libzmq is the place to do it, and let it propagate to 4.0, 4.1 as usual.
And it's been causing failures in pyzmq for all that time, but I don't always have time to take action on failures caused by libzmq master, since it's frequently broken and usually fixed promptly. |
Proposed fix and test in #1433. |
Running tests with libzmq 4-x, 4-1, etc. is a good idea, I'll add those to the pyzmq grid. I already run the tests with libzmq-master, but I don't consider that stable, and don't expect it to always be passing. The maintenance branches I should keep a more careful eye on, and will in the future. |
I don't know if this is the right fix or not, without a test case, though I Testing against the maintenance branches does help; any failures on those libzmq does aim to be stable so if you are getting failures downstream in On Sun, Jun 7, 2015 at 6:20 AM, Min RK notifications@github.com wrote:
|
#1433 includes the test case that was failing on master. |
@minrk FYI I've cut 4.1.2 and 4.0.7 packages. |
@hintjens great, thanks! |
backport fix for zeromq#1428
I've used zmq_device with a single socket for heartbeating and other ping-type activities. In ≥ 4.0.6, this is no longer possible due to the new check on POLLOUT prior to relaying messages.
For example:
POLLOUT will not be set prior to receiving the first message, which means no messages will ever be delivered.
This is a backward-incompatible change between zeromq-4.0.5 and 4.0.6.
The text was updated successfully, but these errors were encountered: