On the criteria to be used in decomposing systems into modules
Communications of the ACM
An algorithm for concurrency control and recovery in replicated distributed databases
ACM Transactions on Database Systems (TODS)
Reusable distributed “data environments”
SAC '92 Proceedings of the 1992 ACM/SIGAPP symposium on Applied computing: technological challenges of the 1990's
Concurrency control by transactions carrying states and preordering universioned entities
CSC '88 Proceedings of the 1988 ACM sixteenth annual conference on Computer science
A Survey of Techniques for Synchronization and Recovery in Decentralized Computer Systems
ACM Computing Surveys (CSUR)
Surveyor's Forum: Recovering an Error
ACM Computing Surveys (CSUR)
Synchronization in Distributed Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
A recovery algorithm for a distributed database system
PODS '83 Proceedings of the 2nd ACM SIGACT-SIGMOD symposium on Principles of database systems
Checkpointing for Distributed Databases: Starting from the Basics
IEEE Transactions on Parallel and Distributed Systems
What if mass storage were free?
CAW '80 Proceedings of the fifth workshop on Computer architecture for non-numeric processing
A reliable object-oriented data repository for a distributed computer system
SOSP '81 Proceedings of the eighth ACM symposium on Operating systems principles
The iMAX-432 object filing system
SOSP '81 Proceedings of the eighth ACM symposium on Operating systems principles
Constraints: consistency and integrity
ACM SIGMOD Record
ACM SIGOPS Operating Systems Review
Hi-index | 0.00 |
In this paper, a new approach to coordinating accesses to shared data objects is described. We have observed that synchronization of accesses to shared data and recovering the state of such data in the case of failures are really two sides of the same problem—implementing atomic actions on multiple data items. We describe a mechanism that solves both problems simultaneously in a way that is compatible with requirements of decentralized systems. In particular, the correct construction of a new atomic action can be done without knowledge of all other atomic actions in the system that might execute concurrently. Further, the mechanisms degrade gracefully if parts of the system fail—only those atomic actions that require resources in failed parts of the system are prevented from executing.