I just had a very long night because of line 69 in lib/cpp/src/concurrency/Monitor.cpp:

assert(Util::currentTime() >= (now + timeout));

There are a couple of problems with this and I thought I'd check here before submitting a jira:
* Release version of thrift library isn't being compiled with -DNDEBUG
* On certain kernels, waiting with a very long timeout (e.g. many minutes or hours) returns just -before- the expected time, hitting the assert and abruptly bringing down the whole process. May be a timer resolution issue, not sure.

What do you guys suggest? Whether -DNDEBUG is used or not, I'm not sure thrift release is an appropriate place to unit test pthreads.

Erik

Reply via email to