CLOTHO: Directed Test Generation for Weakly Consistent Database Systems
Relational database applications are notoriously difficult to test and debug. Concurrent execution of database transactions may violate complex structural invariants that constraint how changes to the contents of one (shared) table affect the contents of another. Simplifying the underlying concurrency model is one way to ameliorate the difficulty of understanding how concurrent accesses and updates can affect database state with respect to these sophisticated properties. Enforcing serializable execution of all transactions achieves this simplification, but it comes at a significant price in performance, especially at scale, where database state is often replicated to improve latency and availability.
To address these challenges, this paper presents a novel testing framework for detecting serializability violations in (SQL) database-backed Java applications executing on weakly-consistent storage systems. We manifest our approach in a tool, CLOTHO, that combines a static analyzer and model checker to generate abstract executions, discover serializability violations in these executions, and translate them back into concrete test inputs suitable for deployment in a test environment. To the best of our knowledge, CLOTHO, is the first automated test generation facility for identifying serializability anomalies of Java applications intended to operate in geo-replicated distributed environments. An experimental evaluation on a set of industry-standard benchmarks demonstrates the utility of our approach.
Fri 25 Oct Times are displayed in time zone: Beirut change
|11:00 - 11:22|
|CLOTHO: Directed Test Generation for Weakly Consistent Database Systems|
Kia RahmaniPurdue University, Kartik NagarPurdue University, Benjamin DelawarePurdue University, Suresh JagannathanPurdue UniversityDOI Pre-print
|11:22 - 11:45|
|Coverage Guided, Property Based Testing|
Leonidas LampropoulosUniversity of Pennsylvania, University of Maryland, Michael HicksUniversity of Maryland, Benjamin C. PierceUniversity of PennsylvaniaDOI
|11:45 - 12:07|
|FuzzFactory: Domain-Specific Fuzzing with Waypoints|
Rohan PadhyeUniversity of California, Berkeley, Caroline LemieuxUniversity of California, Berkeley, Koushik SenUniversity of California, Berkeley, Laurent SimonSamsung Research America, Hayawardh VijayakumarSamsung Research AmericaDOI Pre-print
|12:07 - 12:30|
|Compiler Fuzzing: How Much Does It Matter?|
Michaël MarcozziImperial College London, Qiyi TangImperial College London, Alastair DonaldsonImperial College London, Cristian CadarImperial College LondonLink to publication DOI Pre-print Media Attached File Attached