Repairing Serializability Bugs in Distributed Database Programs via Automated Schema Refactoring
Fri 25 Jun 2021 21:25 - 21:30 at PLDI-B - Talks 5B: Defect Detection and Repair
Serializability is a well-understood concurrency control mechanism that eases reasoning about highly-concurrent database programs. Unfortunately, enforcing serializability has a high performance cost, especially on geographically distributed database clusters. Consequently, many databases allow programmers to choose when a transaction must be executed under serializability, with the expectation that transactions would only be so marked when necessary to avoid serious concurrency bugs. However, this is a significant burden to impose on developers, requiring them to (a) reason about subtle concurrent interactions among potentially interfering transactions, (b) determine when such interactions would violate desired invariants, and (c) then identify the minimum number of transactions whose executions should be serialized to prevent these violations. To mitigate this burden, this paper presents a sound fully-automated schema refactoring procedure that refactors a program’s data layout – rather than its concurrency control logic – to eliminate statically identified concurrency bugs, allowing more transactions to be safely executed under weaker and more performant database guarantees. Experimental results over a range of realistic database benchmarks indicate that our approach is highly effective in eliminating concurrency bugs, with safe refactored programs showing an average of 120% higher throughput and 45% lower latency compared to a serialized baseline.
Fri 25 JunDisplayed time zone: Eastern Time (US & Canada) change
09:00 - 09:40 | |||
09:00 5mTalk | Test-Case Reduction and Deduplication Almost for Free with Transformation-Based Compiler Testing PLDI Alastair F. Donaldson Imperial College London, Paul Thomson Google, Vasyl Teliman National Technical University of Ukraine, Stefano Milizia Imperial College London, André Perez Maselco Federal University of ABC, Antoni Karpiński Warsaw University of Technology DOI | ||
09:05 5mTalk | Execution Reconstruction: Harnessing Failure Reoccurrences for Failure Reproduction PLDI Gefei Zuo University of Michigan, Jiacheng Ma University of Michigan, Andrew Quinn University of Michigan, Pramod Bhatotia TU Munich, Pedro Fonseca Purdue University, Baris Kasikci University of Michigan DOI | ||
09:10 5mTalk | Concolic Program Repair PLDI Ridwan Salihin Shariffdeen National University of Singapore, Yannic Noller National University of Singapore, Lars Grunske Humboldt University of Berlin, Abhik Roychoudhury National University of Singapore DOI Pre-print | ||
09:15 5mTalk | Automated Conformance Testing for JavaScript Engines via Deep Compiler Fuzzing PLDI Guixin Ye Northwest University, Zhanyong Tang Northwest University, Shin Hwei Tan Southern University of Science and Technology, Dingyi Fang Northwest University, Xiaoyang Sun University of Leeds, Lizhong Bian Alipay, Songfang Huang Alibaba DAMO Academy, Haibo Wang University of Leeds, Zheng Wang University of Leeds, UK DOI | ||
09:20 5mTalk | Path-Sensitive Sparse Analysis without Path Conditions PLDI Qingkai Shi Hong Kong University of Science and Technology, Peisen Yao Hong Kong University of Science and Technology, Rongxin Wu Xiamen University, Charles Zhang Hong Kong University of Science and Technology DOI | ||
09:25 5mTalk | Repairing Serializability Bugs in Distributed Database Programs via Automated Schema Refactoring PLDI Kia Rahmani Purdue University, Kartik Nagar IIT Madras, Benjamin Delaware Purdue University, Suresh Jagannathan Purdue University DOI | ||
09:30 5mTalk | SyRust: Automatic Testing of Rust Libraries with Semantic-Aware Program Synthesis PLDI Yoshiki Takashima Carnegie Mellon University, Ruben Martins Carnegie Mellon University, Limin Jia Carnegie Mellon University, Corina S. Păsăreanu Carnegie Mellon University DOI | ||
09:35 5mTalk | When Threads Meet Events: Efficient and Precise Static Race Detection with Origins PLDI Bozhen Liu Texas A&M University, Peiming Liu Texas A&M University, Yanze Li Texas A&M University, Chia-Che Tsai Texas A&M University, Dilma Da Silva Texas A&M University, Jeff Huang Texas A&M University DOI |
21:00 - 21:40 | |||
21:00 5mTalk | Test-Case Reduction and Deduplication Almost for Free with Transformation-Based Compiler Testing PLDI Alastair F. Donaldson Imperial College London, Paul Thomson Google, Vasyl Teliman National Technical University of Ukraine, Stefano Milizia Imperial College London, André Perez Maselco Federal University of ABC, Antoni Karpiński Warsaw University of Technology DOI | ||
21:05 5mTalk | Execution Reconstruction: Harnessing Failure Reoccurrences for Failure Reproduction PLDI Gefei Zuo University of Michigan, Jiacheng Ma University of Michigan, Andrew Quinn University of Michigan, Pramod Bhatotia TU Munich, Pedro Fonseca Purdue University, Baris Kasikci University of Michigan DOI | ||
21:10 5mTalk | Concolic Program Repair PLDI Ridwan Salihin Shariffdeen National University of Singapore, Yannic Noller National University of Singapore, Lars Grunske Humboldt University of Berlin, Abhik Roychoudhury National University of Singapore DOI Pre-print | ||
21:15 5mTalk | Automated Conformance Testing for JavaScript Engines via Deep Compiler Fuzzing PLDI Guixin Ye Northwest University, Zhanyong Tang Northwest University, Shin Hwei Tan Southern University of Science and Technology, Dingyi Fang Northwest University, Xiaoyang Sun University of Leeds, Lizhong Bian Alipay, Songfang Huang Alibaba DAMO Academy, Haibo Wang University of Leeds, Zheng Wang University of Leeds, UK DOI | ||
21:20 5mTalk | Path-Sensitive Sparse Analysis without Path Conditions PLDI Qingkai Shi Hong Kong University of Science and Technology, Peisen Yao Hong Kong University of Science and Technology, Rongxin Wu Xiamen University, Charles Zhang Hong Kong University of Science and Technology DOI | ||
21:25 5mTalk | Repairing Serializability Bugs in Distributed Database Programs via Automated Schema Refactoring PLDI Kia Rahmani Purdue University, Kartik Nagar IIT Madras, Benjamin Delaware Purdue University, Suresh Jagannathan Purdue University DOI | ||
21:30 5mTalk | SyRust: Automatic Testing of Rust Libraries with Semantic-Aware Program Synthesis PLDI Yoshiki Takashima Carnegie Mellon University, Ruben Martins Carnegie Mellon University, Limin Jia Carnegie Mellon University, Corina S. Păsăreanu Carnegie Mellon University DOI | ||
21:35 5mTalk | When Threads Meet Events: Efficient and Precise Static Race Detection with Origins PLDI Bozhen Liu Texas A&M University, Peiming Liu Texas A&M University, Yanze Li Texas A&M University, Chia-Che Tsai Texas A&M University, Dilma Da Silva Texas A&M University, Jeff Huang Texas A&M University DOI |