Assertion failed: options.recv_identity (socket_base.cpp:864)
Description
Environment
Linux, Debian unstable
Activity
Show:
Ivan Pechorin September 26, 2012 at 10:05 AM
I believe, assert in rep.cpp:75 on (msg_->flags () & msg_t::more) is an issue described in LIBZMQ-211. It is still present both in 3.2 (libzmq3-x) and in the development branch (libzmq). Please see my comment to LIBZMQ-211.
Martin Hurton June 27, 2012 at 10:35 AM
gzyao, could you check if this still happens with version 3.2 too? Thanks!
i have a test case where a subscriber binds to a socket and a publisher connects to it. this works fine if both the publisher and subscriber are both compiled and linked against libzmq 2, or both compiled and linked against libzmq 3, but fails in the case of a v2 publisher and a v3 subscriber or in the case of a v3 publisher and a v2 subscriber.
this is the v2 publisher, v3 subscriber case.
$ ./compile
+ CFLAGS='-Wall -O0 -ggdb'
+ gcc -include /usr/include/zmq.h -Wall -O0 -ggdb -o pub2 pub.c -lzmq
+ gcc -include /usr/include/zmq.h -Wall -O0 -ggdb -o sub2 sub.c -lzmq
+ gcc -include /usr/local/include/zmq.h -Wall -O0 -ggdb -o pub3 pub.c -L/usr/local/lib -lzmq
+ gcc -include /usr/local/include/zmq.h -Wall -O0 -ggdb -o sub3 sub.c -L/usr/local/lib -lzmq
$ ./pub2 ipc://testcase.ipc
publisher: zeromq version 2.1.10
./pub2: connecting to socket ipc://testcase.ipc
^Z
zsh: suspended ./pub2 ipc://testcase.ipc
$ bg
[1] + continued ./pub2 ipc://testcase.ipc
$ ./sub3 ipc://testcase.ipc
subscriber: zeromq version 3.1.1
./sub3: binding to socket ipc://testcase.ipc
Assertion failed: options.recv_identity (socket_base.cpp:864)
zsh: abort ./sub3 ipc://testcase.ipc
$