[zeromq-dev] need help with linux platform

Chuck Remes cremes.devlist at mac.com
Wed Feb 16 01:00:21 CET 2011

Due to some ongoing issues with 0mq on OSX, I switched over to using my linux box as the main dev and test server. 

I am running a very recent master from the last day or two, so it's all 2.1.0.

My systems do a lot of high-volume communication amongst 4 distributed components. They connect strictly via the tcp transport (no inproc or ipc). After switching to linux (archlinux running the 2.6.35 kernel) I started getting the mailbox assertion after it ran for a few hours.

  Assertion failed:  new_sndbuf > old_sndbuf (mailbox.cpp:182)

Searching the list gave me a few hints. It looks like this code is running out of buffer space for a socketpair that 0mq uses internally for signaling. The suggestions were to increase net.core.wmem_max, wmem_default, rmem_max and rmem_default.

I boosted the "max" values to 5MB and the default values to 512k. Now one of my components fails with the above assertion almost immediately (seconds). <sigh>

Do any linux experts have any suggestions? (Yes, I'll be returning those values to their original defaults in the short term).

I'm also interested in hearing about what parameters you tune on linux for better 0mq behavior as well as what specific values you are using.

Thank you!


More information about the zeromq-dev mailing list