Company
Date Published
Author
Silpa Ajjarapu
Word count
3805
Language
English
Hacker News points
None

Summary

The authors of this paper experimented with conformance checking for MongoDB in 2020. They used two techniques: trace-checking and test-case generation. The goal was to check if the implementation's behaviors conform to the formal specifications written in TLA+. The authors found that their initial attempt at trace-checking failed due to difficulties in snapshotting a multithreaded program's state, discrepancies between the spec and implementation, and limitations of the model-checker. However, they successfully used test-case generation to check conformance for the MongoDB Mobile SDK. This technique generated 4913 tests that achieved 100% branch coverage of the implementation, discovering a bug in the algorithm. The authors also reviewed recent research developments in conformance checking techniques, including new tools and methodologies for trace-checking and test-case generation. These advancements hold promise for solving the problem of keeping code and specifications in sync, which is essential for ensuring the correctness and reliability of complex systems like MongoDB.