Formal Development of a Total Order Broadcast for Distributed Transactions Using Event-B

  • Authors:
  • Divakar Yadav;Michael Butler

  • Affiliations:
  • School of Electronics and Computer Science, University of Southampton, Southampton, U.K. SO17 1BJ;School of Electronics and Computer Science, University of Southampton, Southampton, U.K. SO17 1BJ

  • Venue:
  • Methods, Models and Tools for Fault Tolerance
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

In a replicated database system, copies of the database are kept across several sites for fault-tolerance and availability. Data access in such systems is usually done within a transactional framework. A read-only transaction accesses data locally and an update transaction modifies the database at all sites. Total order broadcast primitives have been proposed to support transactions and allow fault-tolerant cooperation between the sites in a distributed system. In this paper, we identify and analyze the problem of formation of deadlocks among conflicting update transactions due to race conditions and outline how a system of total order broadcast prevents deadlocks and transaction failures. Later we outline how a refinement based approach with Event-B can be used for formal development of the models of total order broadcast. In this approach we begin with the abstract model of a total order broadcast and verify that the required ordering properties are preserved by the system. Subsequently, in a series of refinement steps we outline how an abstract total order can correctly be implemented by using a notion of sequence number. This technique requires us to discharge proof obligations due to consistency and refinement checking. To discharge the proof obligations we are required to discover invariants that describes the relationship between the abstract total order and the underlying mechanism.