Tracking in Order to Recover: Detectable Recovery of Lock-Free Data Structures
Hagit Attiya, Ohad Ben-Baruch, Panagiota Fatourou, Danny Hendler,, Eleftherios Kosmas

TL;DR
This paper introduces a tracking method for creating detectably recoverable lock-free data structures suitable for non-volatile memory systems, ensuring crash recovery without extensive logging.
Contribution
The paper proposes Info-Structure Based (ISB) tracking, a novel technique that enhances lock-free data structures with minimal overhead for detectable recovery.
Findings
Successfully applied to queue, linked list, binary search tree, and exchanger
Reduces recovery overhead compared to full logging methods
Demonstrates feasibility through experimental evaluation
Abstract
This paper presents the tracking approach for deriving detectably recoverable (and thus also durable) implementations of many widely-used concurrent data structures. Such data structures, satisfying detectable recovery, are appealing for emerging systems featuring byte-addressable non-volatile main memory (NVRAM), whose persistence allows to efficiently resurrect failed processes after crashes. Detectable recovery ensures that after a crash, every executed operation is able to recover and return a correct response, and that the state of the data structure is not corrupted. Info-Structure Based (ISB)-tracking amends descriptor objects used in existing lock-free helping schemes with additional fields that track an operation's progress towards completion and persists these fields to memory in order to ensure detectable recovery. ISB-tracking avoids full-fledged logging and tracks the…
Click any figure to enlarge with its caption.
Figure 1
Figure 2Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Advanced Data Storage Technologies · Security and Verification in Computing
