Noctua: Towards Automated and Practical Fine-grained Consistency Analysis
Kai Ma, Cheng Li, Enzuo Zhu, Ruichuan Chen, Feng Yan, Kang Chen
Abstract
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.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext f20e00fa-9810-463e-8477-6108510abd65Cited by top-tier papers1
Ask how each one uses itBuilds on1
Related papers
- Semantics, Specification, and Bounded Verification of Concurrent Libraries in Replicated SystemsKartik Nagar, Prasita Mukherjee, Suresh JagannathanCAV 2020 · 4 citations
- Bolt-On Strong Consistency: Specification, Implementation, and VerificationNicholas V. Lewchenko, Gowtham Kaki, Bor-Yuh Evan ChangOOPSLA 2025 · 2 citations
- PYLIVE: On-the-Fly Code Change for Python-based Online ServicesHaochen Huang, Chengcheng Xiang, Li Zhong, Yuanyuan ZhouUSENIX ATC 2021 · 7 citations
- 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 citations
