Noctua: Towards Automated and Practical Fine-grained Consistency Analysis
Kai Ma, Cheng Li, Enzuo Zhu, Ruichuan Chen, Feng Yan, Kang Chen
摘要
Relaxing strong consistency plays a vital role in achieving scalability and availability for geo-replicated web applications. However, making relaxation correct in modern implementations, typically written in dynamic languages and utilizing high-level object-oriented database abstractions, remains a challenge, despite the existence of numerous proposed analysis tools.
Here, we present a fully automated verification framework Noctua for understanding fine-grained consistency semantics in web applications. At its core is a simple intermediate representation SOIR that bridges the semantic gaps between high-level languages, database interactions and SMT solver's verification. Noctua's lightweight program analyzer reuses the ability of the language runtime and framework to translate consistency-related effects and application invariants from codebases into SOIR code. Finally, Noctua's verification backend maps SOIR code into SMT verification conditions with a new SMT encoding that decouples order information and thus allows more database semantics to be covered.
We have implemented Noctua 1 for a popular dynamic language, Python, and evaluated its correctness and applicability with two synthetic and four existing Python web applications. The evaluation results highlight that Noctua is able to understand consistency semantics considerably fast from the real codebases with no user input. For synthetic applications that existing solutions can be applied, Noctua's delivered consistent analysis results.
- Work done during his study at USTC.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper1
问问它们各自怎么用它它引用的顶会 Paper1
相关 Paper
- Semantics, Specification, and Bounded Verification of Concurrent Libraries in Replicated SystemsKartik Nagar, Prasita Mukherjee, Suresh JagannathanCAV 2020 · 被引用 4 次
- Bolt-On Strong Consistency: Specification, Implementation, and VerificationNicholas V. Lewchenko, Gowtham Kaki, Bor-Yuh Evan ChangOOPSLA 2025 · 被引用 2 次
- PYLIVE: On-the-Fly Code Change for Python-based Online ServicesHaochen Huang, Chengcheng Xiang, Li Zhong, Yuanyuan ZhouUSENIX ATC 2021 · 被引用 7 次
- Peepco: Batch-Based Consistency OptimizationIvan Kuraj, John K. Feser, Nadia Polikarpova, Armando Solar-LezamaOOPSLA 2025
- Cobra: Making Transactional Key-Value Stores Verifiably SerializableCheng Tan, Changgeng Zhao, Shuai Mu, Michael WalfishOSDI 2020 · 被引用 61 次
