[zeromq-dev] assertion failure with master
cremes.devlist at mac.com
Mon Nov 8 06:14:35 CET 2010
I was running a program that allocated a couple of hundred REQ sockets to connect to a server with a single REP socket via a QUEUE device.
I noticed that when I allocated >64 sockets I started getting an assertion failure.
Assertion failed: nbytes == sizeof (command_t) (mailbox.cpp:193)
I examined the code and saw a comment explaining how this should *never* happen since the command size was already confirmed as being less than the PIPE_BUF. However, I noted a reference to SNDBUF higher up in that same function. I'm wondering if I am exhausting a system resource (SNDBUF in this case) by allocating so many sockets.
BTW, this shell has a very high file descriptor limit (25k) so I know I haven't hit that particular limit.
I can show the code but it's ruby and I know that gives some folks hives. :)
Just imagine a loop that allocates several hundred or several thousand REQ sockets that are all connecting to the same QUEUE device endpoint.
More information about the zeromq-dev