4 ms·
We are using a fuzzing method in ClickHouse that involves sending signals to random threads: https://github.com/ClickHouse/ClickHouse/blob/master/src/Common/Thr
by zX41ZdbW 3y ago
We are using a fuzzing method in ClickHouse that involves sending signals to random threads: https://github.com/ClickHouse/ClickHouse/blob/master/src/Common/ThreadFuzzer.h https://github.com/ClickHouse/ClickHouse/blob/master/src/Com...
We immediately found bugs in many dependent libraries of one of three types:
1. A library does not check for EINTR.
2. A library that waits for something does check for EINTR but does not update a timeout, therefore stopping sooner than needed.
3. A library that waits for something does check for EINTR but incorrectly updates a timeout and waiting indefinitely.