Just a followup that a similar issue appears to exist with ZMQ_ROUTER connecting the ZMQ_DEALER. In this case I'm seeing...
Assertion failed: (prefetched_msg.flags () & msg_t::identity) == 0 (router.cpp:274) Aborted I repro'd this one with two Queue devices connecting back-to-back -- the 2nd Queue's front-end Router connecting to the back-end Dealer of the first Queue, then killing and restarting the process with the first Queue. Is there some sockopt I'm missing that could be contributing to this? On 7/27/2012 3:23 PM, Stuart Brandt wrote: > I get an assertion during a call to zmq_recv on 2 different OSes (OSX > 10.7.4 and CentOS 5.8) under two different builds of 3.x (v3.2.0-rc1 and > a recent build off latest at github.com/zeromq/libzmq). > > The assertion is: > Assertion failed: (msg_->flags ()& msg_t::identity) == 0 (router.cpp:220) > Aborted > > The setup involves: > 1) the simple message queue broker found at > https://github.com/imatix/zguide/blob/master/examples/C/msgqueue.c > I modified the #include to look for zmq.h rather than zhelpers.h to get > it to compile with ZMQ 3.x > > 2) a minimal server implementation that connects to the broker and does > a zmq_recv. Code is: > // > // Demo of assertion in ZMQ 3.x by REP socket connecting to ROUTER socket > // Connects to tcp://localhost:5560 > // > #include<stdio.h> > #include<zmq.h> > > int main (void) > { > char buf[80]; // buffer for zmq_recv call > int len; // len returned by zmq_recv > void *ctx; // ZMQ context > void *sock; // ZMQ socket > > // init ZMQ context, create a REP socket, and connect to ROUTER > ctx = zmq_ctx_new(); > sock = zmq_socket(ctx,ZMQ_REP); > zmq_connect (sock, "tcp://localhost:5560"); > > // do a basic zmq_recv call...warn if it fails > len = zmq_recv(sock,buf,sizeof(buf),0); > if (len< 0) { > printf("zmq_recv failed - %s\n",zmq_strerror(errno)); > } > > // Done. Clean up and end > zmq_close (sock); > zmq_term (ctx); > return 0; > } > > > Steps to repro are start server, start broker, kill broker (spec. > ctrl-C), restart broker. Server aborts with the above assertion. > > Is there something my code should be doing differently? > > Thanks....Stuart > > > > _______________________________________________ > zeromq-dev mailing list > [email protected] > http://lists.zeromq.org/mailman/listinfo/zeromq-dev _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
