English
Related papers

Related papers: On the Semantics of Snapshot Isolation

200 papers

Many distributed applications require transactions. However, transactional protocols that require strong synchronization are costly in large scale environments. Two properties help with scalability of a transactional system: genuine partial…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-06-18 Masoud Saeida Ardekani , Pierre Sutra , Nuno Preguiça , Marc Shapiro

The support for transactions is an essential part of a database management system (DBMS). Without this support, the developers are burdened with ensuring atomic execution of a transaction despite failures as well as concurrent accesses to…

Databases · Computer Science 2024-05-29 Daniel Gómez Ferro , Maysam Yabandeh

This paper describes our experience implementing PostgreSQL's new serializable isolation level. It is based on the recently-developed Serializable Snapshot Isolation (SSI) technique. This is the first implementation of SSI in a production…

Databases · Computer Science 2012-08-22 Dan R. K. Ports , Kevin Grittner

Consistency guarantees among concurrently executing transactions in local- and distributed systems, commonly referred to as isolation levels, have been formalized in a number of models. Thus far, no model can reason about executable…

Programming Languages · Computer Science 2025-08-22 Anders Alnor Mathiasen , Léon Gondelman , Léon Ducruet , Amin Timany , Lars Birkedal

Transactional access to databases is an important abstraction allowing programmers to consider blocks of actions (transactions) as executing in isolation. The strongest consistency model is {\em serializability}, which ensures the atomicity…

Logic in Computer Science · Computer Science 2019-05-23 Sidi Mohamed Beillahi , Ahmed Bouajjani , Constantin Enea

Provenance for transactional updates is critical for many applications such as auditing and debugging of transactions. Recently, we have introduced MV-semirings, an extension of the semiring provenance model that supports updates and…

Snapshot isolation (SI) is a prevalent weak isolation level that avoids the performance penalty imposed by serializability and simultaneously prevents various undesired data anomalies. Nevertheless, SI anomalies have recently been found in…

Databases · Computer Science 2023-10-26 Kaile Huang , Si Liu , Zhenge Chen , Hengfeng Wei , David Basin , Haixiang Li , Anqun Pan

ANSI SQL-92 defines Isolation Levels in terms of phenomena: Dirty Reads, Non-Repeatable Reads, and Phantoms. This paper shows that these phenomena and the ANSI SQL definitions fail to characterize several popular isolation levels, including…

Databases · Computer Science 2007-05-23 Hal Berenson , Phil Bernstein , Jim Gray , Jim Melton , Elizabeth O'Neil , Patrick O'Neil

This paper introduces a unified model of consistency and isolation that minimizes the gap between how these guarantees are defined and how they are perceived. Our approach is premised on a simple observation: applications view storage…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-09-22 Natacha Crooks , Youer Pu , Lorenzo Alvisi , Allen Clement

We introduce an interleaving operational semantics for describing the client-observable behaviour of atomic transactions on distributed key-value stores. Our semantics builds on abstract states comprising centralised, global key-value…

Logic in Computer Science · Computer Science 2019-10-07 Shale Xiong , Andrea Cerone , Azalea Raad , Philippa Gardner

Serializability (SER) and snapshot isolation (SI) are widely used transactional isolation levels in database systems. The isolation checking problem asks whether a given execution history of a database system satisfies a specified isolation…

Databases · Computer Science 2025-04-03 Hexu Li , Hengfeng Wei , Hongrong Ouyang , Yuxing Chen , Na Yang , Ruohao Zhang , Anqun Pan

Software Transactional memory (STM) is an emerging abstraction for concurrent programming alternative to lock-based synchronizations. Most STM models admit only isolated transactions, which are not adequate in multithreaded programming…

Programming Languages · Computer Science 2020-07-22 Marino Miculan , Marco Peressotti

Transactions simplify concurrent programming by enabling computations on shared data that are isolated from other concurrent computations and are resilient to failures. Modern databases provide different consistency models for transactions…

Databases · Computer Science 2019-08-14 Ranadeep Biswas , Constantin Enea

Concurrency control (CC) algorithms must trade off strictness for performance. Serializable CC schemes generally pay higher cost to prevent anomalies, both in runtime overhead and in efforts wasted by aborting transactions. We propose the…

Databases · Computer Science 2017-05-22 Tianzheng Wang , Ryan Johnson , Alan Fekete , Ippokratis Pandis

Serializability is a well-understood correctness criterion that simplifies reasoning about the behavior of concurrent transactions by ensuring they are isolated from each other while they execute. However, enforcing serializable isolation…

Programming Languages · Computer Science 2017-11-13 Gowtham Kaki , Kartik Nagar , Mahsa Nazafzadeh , Suresh Jagannathan

The Software Transactional Memory (STM) model is an original approach for controlling concurrent accesses to ressources without the need for explicit lock-based synchronization mechanisms. A key feature of STM is to provide a way to group…

Logic in Computer Science · Computer Science 2007-05-23 Lucia Acciai , Michele Boreale , Silvano Dal Zilio

A snapshot object simulates the behavior of an array of single-writer/multi-reader shared registers that can be read atomically. Delporte-Gallet et al. proposed two fault-tolerant algorithms for snapshot objects in asynchronous crash-prone…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-03-03 Chryssis Georgiou , Oskar Lundström , Elad Michael Schiller

The hardware transactional memory (HTM) implementations in commercially available processors are significantly hindered by their tight capacity constraints. In practice, this renders current HTMs unsuitable to many real-world workloads of…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-03-09 Ricardo Filipe , Shady Issa , Paolo Romano , João Barreto

Transactional memory is a mechanism that manages thread synchronisation on behalf of a programmer so that blocks of code execute with an illusion of atomicity. The main safety criterion for transactional memory is opacity, which defines…

Logic in Computer Science · Computer Science 2016-10-05 Alasdair Armstrong , Brijesh Dongol , Simon Doherty

Concurrent separation logic (CSL) is a specification logic for concurrent imperative programs with shared memory and locks. In this paper, we develop a concurrent and interactive account of the logic inspired by asynchronous game semantics.…

Programming Languages · Computer Science 2018-07-24 Paul-André Melliès , Léo Stefanesco
‹ Prev 1 2 3 10 Next ›