1/ We're excited to announce that our paper on finding bugs in retry logic was accepted at SOSP'24!
#sosp #sosp24 #sigops #acm2/ Retry logic commonly improves software reliability. Yet despite its simplicity, implementing retry correctly is challenging.
3/ We studied 70 retry bug reports from eight popular Apache systems and found challenges at both policy (if, when, how often to retry) and mechanism levels (how retry should be performed).
4/ We also found retry is often under-tested due to difficulty of writing tests that faithfully simulate retry conditions, like transient errors.
5/ So we built Wasabi, a toolkit to detect retry bugs combining fault injection, static analysis, testing, and the fuzzy code comprehension capabilities of LLMs. We found 100+ new retry bugs by repurposing existing tests as bug triggers, and thru LLM-informed static analysis.
6/ We believe this is an exciting new direction: bug-finding at the mechanism level. Traditional program analysis is less suited to extract higher-level functionality patterns from code. Yet, LLMs offer a first compelling opportunity to tackle bugs at this level of abstraction.
7/ A huge, huge, huge thank you to our rock star advisor, Shan; our stellar MSR mentors Suman, Jonathan, and Madan; our amazing undergrad research assistants, Yiming and Cyrus; and, last but not least, my fantastic co-first author, Utsav.