While playing with the perl bindings, I was rebuilding zeromq-2.1.1.
In fact, I rebuilt it several times :)

On occasion, make check will fail.  It will always fail only on the
test_shutdown_stress test.  I tried this on two separate boxes: one is
a VMware virtual machine (vk-dev below) and the other is a traditional
hardware machine.  The major difference is the former is running
FreeBSD 8.2 and the other 8.1.  I don't believe that to be of
significance here.

I also fired up a CentOS 5 vm and it never fails the shutdown stress
test program.

My experience encountering non-determinism in threaded/parallel code
leads me to think there is some race condition being exposed here by
the difference in threading between linux and FreeBSD.


Running the test on FreeBSD 8.2/i386 in VMWare.  It works about half
the time it seems.

[vk-dev]% cd tests/
[vk-dev]% ./test_shutdown_stress
Assertion failed: nbytes == sizeof (command_t) (mailbox.cpp:193)
Abort
[vk-dev]% ./test_shutdown_stress
[vk-dev]% ./test_shutdown_stress
Assertion failed: nbytes == sizeof (command_t) (mailbox.cpp:193)
Abort
[vk-dev]% ./test_shutdown_stress
Assertion failed: nbytes == sizeof (command_t) (mailbox.cpp:193)
Invalid argument
Invalid argument
rc == 0 (mailbox.cpp:177)
Abort
[vk-dev]% ./test_shutdown_stress
[vk-dev]% ./test_shutdown_stress
[vk-dev]% ./test_shutdown_stress
[vk-dev]% ./test_shutdown_stress
Assertion failed: nbytes == sizeof (command_t) (mailbox.cpp:193)
Invalid argument
Abort
[vk-dev]%


And on FreeBSD 8.1/i386:

[mmstaging]% ./test_shutdown_stress
[mmstaging]% ./test_shutdown_stress
Assertion failed: nbytes == sizeof (command_t) (mailbox.cpp:193)
Abort
[mmstaging]% ./test_shutdown_stress
[mmstaging]% ./test_shutdown_stress
Assertion failed: nbytes == sizeof (command_t) (mailbox.cpp:193)
Abort
[mmstaging]% ./test_shutdown_stress
Assertion failed: nbytes == sizeof (command_t) (mailbox.cpp:193)
Abort
[mmstaging]% ./test_shutdown_stress
Assertion failed: nbytes == sizeof (command_t) (mailbox.cpp:193)
Abort
[mmstaging]% ./test_shutdown_stress
Assertion failed: nbytes == sizeof (command_t) (mailbox.cpp:193)
Abort
[mmstaging]% ./test_shutdown_stress
Broken pipe
[mmstaging]% ./test_shutdown_stress
Assertion failed: nbytes == sizeof (command_t) (mailbox.cpp:193)
Resource temporarily unavailable
nbytes != -1 (mailbox.cpp:189)
Abort
[mmstaging]%
_______________________________________________
zeromq-dev mailing list
[email protected]
http://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to