{"id":"https://openalex.org/W4414266939","doi":"https://doi.org/10.14778/3750601.3750626","title":"Design and Modular Verification of Distributed Transactions in MongoDB","display_name":"Design and Modular Verification of Distributed Transactions in MongoDB","publication_year":2025,"publication_date":"2025-08-01","ids":{"openalex":"https://openalex.org/W4414266939","doi":"https://doi.org/10.14778/3750601.3750626"},"language":"en","primary_location":{"id":"doi:10.14778/3750601.3750626","is_oa":false,"landing_page_url":"https://doi.org/10.14778/3750601.3750626","pdf_url":null,"source":{"id":"https://openalex.org/S4210226185","display_name":"Proceedings of the VLDB Endowment","issn_l":"2150-8097","issn":["2150-8097"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the VLDB Endowment","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5053203769","display_name":"William Schultz","orcid":null},"institutions":[{"id":"https://openalex.org/I3131869939","display_name":"NBCUniversal (United States)","ror":"https://ror.org/05kgq6h80","country_code":"US","type":"company","lineage":["https://openalex.org/I3131869939"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"William Schultz","raw_affiliation_strings":["MongoDB Research, New York, New York"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"MongoDB Research, New York, New York","institution_ids":["https://openalex.org/I3131869939"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5101800282","display_name":"Murat Demirba\u015f","orcid":"https://orcid.org/0000-0001-7952-9035"},"institutions":[{"id":"https://openalex.org/I3131869939","display_name":"NBCUniversal (United States)","ror":"https://ror.org/05kgq6h80","country_code":"US","type":"company","lineage":["https://openalex.org/I3131869939"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Murat Demirbas","raw_affiliation_strings":["MongoDB Research, New York, New York"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"MongoDB Research, New York, New York","institution_ids":["https://openalex.org/I3131869939"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I3131869939"],"apc_list":null,"apc_paid":null,"fwci":2.043,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.8853206,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":98,"max":99},"biblio":{"volume":"18","issue":"12","first_page":"5045","last_page":"5058"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10101","display_name":"Cloud Computing and Resource Management","score":0.9973000288009644,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11181","display_name":"Advanced Data Storage Technologies","score":0.996999979019165,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.7271999716758728},{"id":"https://openalex.org/keywords/concurrency","display_name":"Concurrency","score":0.5996999740600586},{"id":"https://openalex.org/keywords/model-checking","display_name":"Model checking","score":0.5303000211715698},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.5220999717712402},{"id":"https://openalex.org/keywords/formal-verification","display_name":"Formal verification","score":0.4652999937534332},{"id":"https://openalex.org/keywords/protocol","display_name":"Protocol (science)","score":0.4458000063896179},{"id":"https://openalex.org/keywords/two-phase-commit-protocol","display_name":"Two-phase commit protocol","score":0.44110000133514404},{"id":"https://openalex.org/keywords/concurrency-control","display_name":"Concurrency control","score":0.43950000405311584},{"id":"https://openalex.org/keywords/isolation","display_name":"Isolation (microbiology)","score":0.4316999912261963},{"id":"https://openalex.org/keywords/debugging","display_name":"Debugging","score":0.39089998602867126}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8504999876022339},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.7271999716758728},{"id":"https://openalex.org/C193702766","wikidata":"https://www.wikidata.org/wiki/Q1414548","display_name":"Concurrency","level":2,"score":0.5996999740600586},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.5787000060081482},{"id":"https://openalex.org/C110251889","wikidata":"https://www.wikidata.org/wiki/Q1569697","display_name":"Model checking","level":2,"score":0.5303000211715698},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.5220999717712402},{"id":"https://openalex.org/C111498074","wikidata":"https://www.wikidata.org/wiki/Q173326","display_name":"Formal verification","level":2,"score":0.4652999937534332},{"id":"https://openalex.org/C2780385302","wikidata":"https://www.wikidata.org/wiki/Q367158","display_name":"Protocol (science)","level":3,"score":0.4458000063896179},{"id":"https://openalex.org/C111009948","wikidata":"https://www.wikidata.org/wiki/Q1067690","display_name":"Two-phase commit protocol","level":5,"score":0.44110000133514404},{"id":"https://openalex.org/C84511453","wikidata":"https://www.wikidata.org/wiki/Q2914952","display_name":"Concurrency control","level":3,"score":0.43950000405311584},{"id":"https://openalex.org/C2775941552","wikidata":"https://www.wikidata.org/wiki/Q25212305","display_name":"Isolation (microbiology)","level":2,"score":0.4316999912261963},{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.39089998602867126},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3864000141620636},{"id":"https://openalex.org/C113843644","wikidata":"https://www.wikidata.org/wiki/Q901882","display_name":"Interface (matter)","level":4,"score":0.37929999828338623},{"id":"https://openalex.org/C116253237","wikidata":"https://www.wikidata.org/wiki/Q1437424","display_name":"Formal specification","level":2,"score":0.37049999833106995},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.3675000071525574},{"id":"https://openalex.org/C75606506","wikidata":"https://www.wikidata.org/wiki/Q1049183","display_name":"Formal methods","level":2,"score":0.3547999858856201},{"id":"https://openalex.org/C55282118","wikidata":"https://www.wikidata.org/wiki/Q252683","display_name":"Snapshot (computer storage)","level":2,"score":0.35040000081062317},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.34060001373291016},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.3280999958515167},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.3188000023365021},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.3181000053882599},{"id":"https://openalex.org/C168167062","wikidata":"https://www.wikidata.org/wiki/Q1117970","display_name":"Component (thermodynamics)","level":2,"score":0.3156000077724457},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.31450000405311584},{"id":"https://openalex.org/C25185021","wikidata":"https://www.wikidata.org/wiki/Q4053284","display_name":"Distributed transaction","level":4,"score":0.3084999918937683},{"id":"https://openalex.org/C70061542","wikidata":"https://www.wikidata.org/wiki/Q989016","display_name":"Distributed database","level":2,"score":0.3043999969959259},{"id":"https://openalex.org/C188045909","wikidata":"https://www.wikidata.org/wiki/Q3306359","display_name":"Atomicity","level":3,"score":0.29330000281333923},{"id":"https://openalex.org/C62460635","wikidata":"https://www.wikidata.org/wiki/Q5508853","display_name":"Functional verification","level":3,"score":0.28929999470710754},{"id":"https://openalex.org/C76844732","wikidata":"https://www.wikidata.org/wiki/Q4072285","display_name":"Conformance testing","level":3,"score":0.28519999980926514},{"id":"https://openalex.org/C15569618","wikidata":"https://www.wikidata.org/wiki/Q3561421","display_name":"Liveness","level":2,"score":0.274399995803833},{"id":"https://openalex.org/C33762810","wikidata":"https://www.wikidata.org/wiki/Q461671","display_name":"Data integrity","level":2,"score":0.27160000801086426},{"id":"https://openalex.org/C128942645","wikidata":"https://www.wikidata.org/wiki/Q1568346","display_name":"Test case","level":3,"score":0.26739999651908875},{"id":"https://openalex.org/C150495011","wikidata":"https://www.wikidata.org/wiki/Q128392","display_name":"Concurrent computing","level":2,"score":0.2660999894142151},{"id":"https://openalex.org/C2775948798","wikidata":"https://www.wikidata.org/wiki/Q5160261","display_name":"Conformance checking","level":5,"score":0.26100000739097595},{"id":"https://openalex.org/C62611344","wikidata":"https://www.wikidata.org/wiki/Q1062658","display_name":"Node (physics)","level":2,"score":0.25099998712539673}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.14778/3750601.3750626","is_oa":false,"landing_page_url":"https://doi.org/10.14778/3750601.3750626","pdf_url":null,"source":{"id":"https://openalex.org/S4210226185","display_name":"Proceedings of the VLDB Endowment","issn_l":"2150-8097","issn":["2150-8097"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the VLDB Endowment","raw_type":"journal-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":41,"referenced_works":["https://openalex.org/W1433235304","https://openalex.org/W1597783682","https://openalex.org/W1845494277","https://openalex.org/W1968658954","https://openalex.org/W1969925795","https://openalex.org/W1973938051","https://openalex.org/W1999035602","https://openalex.org/W1999610418","https://openalex.org/W2033546932","https://openalex.org/W2057052228","https://openalex.org/W2060440895","https://openalex.org/W2085422792","https://openalex.org/W2117917070","https://openalex.org/W2119296494","https://openalex.org/W2125047630","https://openalex.org/W2132107743","https://openalex.org/W2158966008","https://openalex.org/W2293215590","https://openalex.org/W2296232480","https://openalex.org/W2612808231","https://openalex.org/W2725226870","https://openalex.org/W2737641788","https://openalex.org/W2799174450","https://openalex.org/W2894638380","https://openalex.org/W2914209329","https://openalex.org/W2948852353","https://openalex.org/W2970657450","https://openalex.org/W2980275936","https://openalex.org/W3004616691","https://openalex.org/W3031474432","https://openalex.org/W3031917602","https://openalex.org/W3085924233","https://openalex.org/W3103682315","https://openalex.org/W3121369470","https://openalex.org/W3137220996","https://openalex.org/W3202858814","https://openalex.org/W4206512216","https://openalex.org/W4256348170","https://openalex.org/W4313563670","https://openalex.org/W4372258288","https://openalex.org/W4394923329"],"related_works":[],"abstract_inverted_index":{"MongoDB's":[0],"distributed":[1,72],"multi-document":[2],"transactions":[3,73,155],"protocol":[4,74,89,170,205],"was":[5],"designed":[6],"and":[7,35,46,75,177],"developed":[8],"incrementally,":[9],"building":[10],"on":[11],"WiredTiger,":[12],"an":[13,105,123,185],"existing":[14],"single":[15],"node":[16],"multi-version":[17],"storage":[18,81,116,135,143],"engine":[19],"that":[20],"provided":[21],"snapshot":[22],"isolated":[23],"key-value":[24],"storage.":[25],"This":[26,100],"layered":[27],"approach":[28,68,102],"required":[29],"meticulous":[30],"management":[31],"of":[32,113,162],"concurrency":[33,207],"control":[34],"timestamping":[36],"mechanisms":[37],"across":[38],"system":[39,182],"layers,":[40],"complicated":[41],"by":[42,153],"intricate":[43],"component":[44],"interactions":[45,179],"a":[47,209],"large":[48],"evolving":[49],"codebase.":[50],"In":[51],"this":[52,65,119],"paper,":[53],"we":[54],"describe":[55],"our":[56,134,193],"experience":[57],"using":[58],"modular":[59,101],"formal":[60,163],"specification":[61,194],"techniques":[62],"to":[63,85,118,128,198],"address":[64],"challenge.":[66],"Our":[67,157],"formally":[69,199],"specifies":[70],"the":[71,79,94,114,142,146,149,154,160,204],"its":[76],"interface":[77,150],"with":[78,180],"underlying":[80],"layer,":[82],"allowing":[83],"us":[84,197],"verify":[86],"high":[87],"level":[88],"properties":[90],"while":[91],"also":[92,103,173,195],"formalizing":[93],"contract":[95],"between":[96],"these":[97],"two":[98],"components.":[99],"enables":[104],"automated,":[106],"model-based":[107],"verification":[108],"technique":[109],"for":[110,167,174],"testing":[111],"conformance":[112],"WiredTiger":[115],"implementation":[117,147],"interface.":[120],"We":[121],"use":[122],"explicit":[124],"state":[125],"model":[126],"checker":[127],"automatically":[129],"generate":[130],"test":[131],"cases":[132],"from":[133],"model,":[136],"which":[137],"are":[138],"then":[139],"executed":[140],"against":[141],"implementation,":[144],"ensuring":[145],"matches":[148],"relied":[151],"upon":[152],"protocol.":[156],"work":[158],"highlights":[159],"value":[161],"modeling":[164],"not":[165,214],"only":[166],"verifying":[168,189],"high-level":[169],"correctness":[171],"but":[172],"precisely":[175],"defining":[176],"validating":[178],"lower-level":[181],"components":[183],"in":[184],"automated":[186],"way.":[187],"Beyond":[188],"key":[190],"isolation":[191,211],"properties,":[192],"enabled":[196],"analyze":[200],"permissiveness-":[201],"-how":[202],"well":[203],"maximizes":[206],"within":[208],"given":[210],"level-a":[212],"property":[213],"previously":[215],"examined.":[216]},"counts_by_year":[{"year":2026,"cited_by_count":3}],"updated_date":"2026-07-25T15:57:00.446498","created_date":"2025-10-10T00:00:00"}
