datacratic/soa — pull request #19 by leobispo (2013-07-08 11:40:30+00:00)
Title: Pull request Hanging because / try_lock_for undefined behavior

I found 2 problems with the zookeeper_init call.

1- The behavior of a program is undefined if:
a thread that owns a timed_mutex object calls lock(), try_lock(), try_lock_for(), or try_lock_until() on that object
2- There is a bug in the g++-4.7 Ubuntu 13.04 with the std::chrono::steady_clock that is not calculating the exact epoch time.

This commit will fix both issues, changing the timed_mutex with a conditional_variable. The behavior is still the same.