[zeromq-dev] assertion failure with master
Martin Lucina
mato at kotelna.sk
Mon Nov 8 12:20:10 CET 2010
Martin,
sustrik at 250bpm.com said:
> > Assertion failed: nbytes == sizeof (command_t) (mailbox.cpp:193)
> >
>
> We've missed the fact that the write (being non-blocking) can actually
> write half of command in the case the buffer limit is reached. Thus we
> have to write the remaining part of the command after increasing the
> buffer size.
So you're saying a non-blocking send () may simply return with no error and
less bytes written? I guess that makes sense, I was wondering about that
case but the POSIX docs were not terribly obvious on this.
In that case, please follow along here, I need to change the test on line
165 to check that less bytes were written, if so after a successful resize
of SNDBUF in the 2nd send () on line 186 we write just the remainder, and
add up the total bytes written to make sure it all makes sense.
Right?
-mato
More information about the zeromq-dev
mailing list