
Real fix must work without any sleep(), even 0 delay. With all these sync events the code makes perfect sense and execution is properly organized. So I am 99% sure there is a problem in green/zmq. Hint for the person willing to take on this in future: send/recv seems not to switch to zmq trampolining
The tests are intended to be run using Nose. http://somethingaboutorange.com/mrl/projects/nose/ To run tests, simply install nose, and then, in the eventlet tree, do: $ nosetests That's it! Its output is the same as unittest's output. It tends to emit a lot of tracebacks from various poorly-behaving tests, but they still (generally) pass.