How to assign votes in a distributed system
Journal of the ACM (JACM)
Consistency in a partitioned network: a survey
ACM Computing Surveys (CSUR)
A quorum-consensus replication method for abstract data types
ACM Transactions on Computer Systems (TOCS)
Dynamic quorum adjustment for partitioned data
ACM Transactions on Database Systems (TODS)
A weighted voting algorithm for replicated directories
Journal of the ACM (JACM)
Maintaining availability in partitioned replicated databases
ACM Transactions on Database Systems (TODS)
Increasing availability under mutual exclusion constraints with dynamic vote reassignment
ACM Transactions on Computer Systems (TOCS)
Dynamic voting algorithms for maintaining the consistency of a replicated database
ACM Transactions on Database Systems (TODS)
Disconnected operation in the Coda file system
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
The process group approach to reliable distributed computing
Communications of the ACM
Lightweight recoverable virtual memory
ACM Transactions on Computer Systems (TOCS) - Special issue on operating systems principles
Determining the last process to fail
ACM Transactions on Computer Systems (TOCS)
Rover: a toolkit for mobile information access
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Managing update conflicts in Bayou, a weakly connected replicated storage system
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Enriched View Synchrony: A Programming Paradigm for Partitionable Asynchronous Distributed Systems
IEEE Transactions on Computers
Specifying and using a partitionable group communication service
PODC '97 Proceedings of the sixteenth annual ACM symposium on Principles of distributed computing
Dynamic voting for consistent primary components
PODC '97 Proceedings of the sixteenth annual ACM symposium on Principles of distributed computing
A dynamic view-oriented group communication service
PODC '98 Proceedings of the seventeenth annual ACM symposium on Principles of distributed computing
ACM Transactions on Computer Systems (TOCS)
A Configurable Membership Service
IEEE Transactions on Computers
A Majority consensus approach to concurrency control for multiple copy databases
ACM Transactions on Database Systems (TODS)
Consistency and recovery control for replicated files
Proceedings of the tenth ACM symposium on Operating systems principles
An efficient, fault-tolerant protocol for replicated data management
PODS '85 Proceedings of the fourth ACM SIGACT-SIGMOD symposium on Principles of database systems
A review of experiences with reliable multicast
Software—Practice & Experience
A new approach to developing and implementing eager database replication protocols
ACM Transactions on Database Systems (TODS)
Group Communication in Partitionable Systems: Specification and Algorithms
IEEE Transactions on Software Engineering
Reliable Distributed Computing with the ISIS Toolkit
Reliable Distributed Computing with the ISIS Toolkit
Don't Be Lazy, Be Consistent: Postgres-R, A New Way to Implement Database Replication
VLDB '00 Proceedings of the 26th International Conference on Very Large Data Bases
Primary Partition "Virtually-Synchronous Communication" harder than Consensus
WDAG '94 Proceedings of the 8th International Workshop on Distributed Algorithms
The Inherent Cost of Strong-Partial View-Synchronous Communication
WDAG '95 Proceedings of the 9th International Workshop on Distributed Algorithms
Scalable Replication in Database Clusters
DISC '00 Proceedings of the 14th International Conference on Distributed Computing
Notes on Data Base Operating Systems
Operating Systems, An Advanced Course
Distributed Systems - Architecture and Implementation, An Advanced Course
Online Reconfiguration in Replicated Databases Based on Group Communication
DSN '01 Proceedings of the 2001 International Conference on Dependable Systems and Networks (formerly: FTCS)
Robust emulation of shared memory using dynamic quorum-acknowledged broadcasts
FTCS '97 Proceedings of the 27th International Symposium on Fault-Tolerant Computing (FTCS '97)
FTCS '98 Proceedings of the The Twenty-Eighth Annual International Symposium on Fault-Tolerant Computing
A Fault-Tolerant Algorithm for Decentralized On-line Quorum Adaptation
FTCS '98 Proceedings of the The Twenty-Eighth Annual International Symposium on Fault-Tolerant Computing
Weighted voting for replicated data
SOSP '79 Proceedings of the seventh ACM symposium on Operating systems principles
Fast Replicated State Machines Over Partitionable Networks
SRDS '97 Proceedings of the 16th Symposium on Reliable Distributed Systems
On programming with view synchrony
ICDCS '96 Proceedings of the 16th International Conference on Distributed Computing Systems (ICDCS '96)
System Support for Partition-Aware Network Applications
ICDCS '98 Proceedings of the The 18th International Conference on Distributed Computing Systems
From Total Order to Database Replication
ICDCS '02 Proceedings of the 22 nd International Conference on Distributed Computing Systems (ICDCS'02)
Availability Study of Dynamic Voting Algorithms
ICDCS '01 Proceedings of the The 21st International Conference on Distributed Computing Systems
View Synchronous Communication in Large Scale Networks
View Synchronous Communication in Large Scale Networks
The ensemble system
Hi-index | 0.00 |
We consider programming network applications that are based on the process group paradigm. When such applications are deployed in unreliable networks, they may partition into several disconnected clusters causing multiple views of the group's current composition to exist concurrently. In this paper we propose a mechanism for efficiently deciding when a view constitutes the "primary partition" for the group. Our solution is highly flexible and has the following features: possibility to modify selection rules at run-time without having to halt and restart the application: support for dynamic groups whose membership may change not only due to failures recoveries but also due to processes voluntarily joining and leaving; ability to re-establish a primary partition even after a "total failure" scenario where all group members crash. These features facilitate the development of partition-aware applications that are capable of "adapting" themselves to their operating environment by establishing selection rules based on observed execution characteristics.