Home / Companies / MongoDB / Blog / Post Details
Content Deep Dive

New Data Management Experience in the Atlas UI

Blog post from MongoDB

Post Details
Company
Date Published
Author
Silpa Ajjarapu, Betsy Button
Word Count
3,805
Company Posts That Month
23
Language
English
Hacker News Points
-
Post removed?
No
Summary

Conformance checking is a problem at MongoDB that involves ensuring the implementation of distributed algorithms conforms to their formal specifications. The company uses TLA+ (Temporal Logic and Applied), a formal specification language, to describe its algorithms. However, testing conformance has been challenging due to the complexity of the systems and the need for continuous synchronization between the spec and implementation. Two techniques used for conformance checking are trace-checking and test-case generation. Trace-checking involves generating execution traces from an implementation and verifying they conform to a specification, while test-case generation starts with a specification and checks its behaviors in the implementation. The authors of a 2020 paper experimented with these techniques on two MongoDB products but found that conformance checking was difficult due to the complexity of the systems and the need for continuous synchronization between the spec and implementation. However, they learned three lessons: it's hard to snapshot a multithreaded program's state, the implementation must conform to the specification, and test-case generation should extend easily to multiple specs. Since then, there has been progress in conformance checking techniques, including new tools and research prototypes that aim to make conformance checking more practical and accessible.

Trends Found in this Post
Trend Post Mentions Total Month Mentions Posts Companies MoM
Observability 2 1,696 379 123 -20%
Use This Data

Use this post, company, and trend context to find content marketing opportunities, perform competitive analysis, or address product feature gaps via the Plushcap MCP server or the Plushcap API.