mirror of
https://github.com/scylladb/scylladb.git
synced 2026-05-02 14:15:46 +00:00
The poll loop used condition_variable::wait(timeout) to sleep between iterations. On every normal timeout expiry, this threw a condition_variable_timed_out exception, which incremented the C++ exception metric and triggered false alerts for support. Replace the timed wait with a seastar::timer that broadcasts the condition variable on expiry, combined with an untimed wait(). The timer is cancelled automatically on scope exit when the wait is woken early by trigger_poll() or abort. Fixes SCYLLADB-1477 Closes scylladb/scylladb#29438
5.2 KiB
5.2 KiB