How a Flaky Test Exposed a Redis Client Use-After-Free Bug
A flaky test exposed a Redis client use-after-free

We tracked down a mysterious memory corruption bug in our Redis client after a flaky test suite blocked our deployments. What started as a race condition investigation led to a 'double free' error and eventually a segmentation fault. By leveraging our Test Engine reliability scores and analyzing a core dump with ASAN, we discovered a use-after-free vulnerability in the hiredis C extension caused by a threading issue.
"Memory corruption bugs such as these can often take months to fix, because having a core dump generated by a segfault only tells you that memory was corrupted at some point in the past, but gives you few clues as to how it became corrupt."