[zeromq-dev] Modification required to language bindings!

Martin Sustrik sustrik at 250bpm.com
Sat Mar 13 15:18:22 CET 2010

Hi all,

Today I've removed ZMQ_NOFLUSH and zmq_flush implementation from 
0MQ/2.0. The rationale for the change is as follows:

1. zmq_flush() looked like an equivalent of POSIX fflush and thus it was 
confusing to 0MQ users.

2. zmq_flush() was usable only in very small percentage of use cases 
(loads over 1M msgs/sec + business logic allowing for message batching 
on application layer), yet it used significant part of API real estate.

3. The same functionality will be doable in different way in the future 
(multi-part messaged).

Upcoming release (2.0-beta3) will still define the symbols (zmq_flush 
and ZMQ_NOFLUSH) in zmq.h, thus the language bindings won't break. The 
documentation concerning the feature is removed though.

Following version (2.0-beta4) will remove the symbols from zmq.h, thus 
the language bindings have to be changed accordingly in the meantime. 
(I've already changed Java and Ruby bindings that I am maintaining.)

Sorry for annoyance!

More information about the zeromq-dev mailing list