Assertion failed: msg_->flags () & msg_t::more (rep.cpp:75) in simple ping/pong
Description
Environment
OSX 10.7.2
Attachments
3
Activity
Show:

Min RK November 8, 2011 at 4:25 PM
Fix confirmed, closing.
Thanks!

Martin Sustrik November 8, 2011 at 1:52 PM
Fixed in commit 89962a8.
Please re-check and close the issue if the problem is fixed.

Martin Sustrik November 8, 2011 at 7:06 AM
It just happened here as well. However, it seems very rare on my box <1%. Anyway, I'm moving on with the debugging of the hangup.

Min RK November 7, 2011 at 6:08 PM
the cpp test does cause the assertion on my machine, so maybe that's kqueue-specific?

Martin Sustrik November 7, 2011 at 7:53 AM
This one reproduces the hangup in 100% of cases.
I can readily encounter
Assertion failed: msg_->flags () & msg_t::more (rep.cpp:75)
in new libzmq-3.1 master, simply by echoing a message back and forth with req/rep.Attached is a python script that creates req/rep pairs, sending a simple message back and forth a number of times. The assert is hit in rep.recv() after a few cycles. It never seems to happen on the first pair of sockets, no matter how many pings I add, but always happens in the first few socket pairs, and always happens on the first echo for a given socket pair.
Sometimes, instead of hitting the assert in rep.recv(), the following req.recv() hangs, which is presumably related, but possibly a separate bug.