Fair serializability of iterated transactions using fifo-nets
The serializability condition is usually considered in order to maintain the consistency of a Database in the presence of conflicting accesses to the Database performed by concurrent transactions. The transactions considered in this paper may be infinitely often repeated and a synchronization algorithm is proposed which controls the serializability condition for such transactions. This algorithm, based upon the use of FIFO-Nets, provides the maximal amount of parallelism among the transactions and guaranties fairness, i.e., every transaction is actually performed infinitely often. As an application, the synchronization algorithm is shown to give also a fair solution to the classical dining philosophers problem. The size of the memory needed by the algorithm cannot be bounded, however a particular case is pointed out for which memory boundedness can be achieved. This particular case covers the problem of updating multiple copies of a Database.
Key wordsconcurrency maximal serializability fair Petri-nets (FIFO-Nets)
Unable to display preview. Download preview PDF.
- Finkel A.; Memmi G.: FIFO-nets: a new model of parallel computation. Proc. of the 6th G.I. Conf. on Theoretical Computer Science, Dortmund, Pays-Bas, Lect. Notes Comput. Sci. 150 (1983).Google Scholar
- Flé M.P.; Roucairol G.: On Serializability of Iterated Transactions. ACM SIGACT-SIGOPS Symp. on Princ. of Distributed Computing, Ottawa, Canada, 194–200 (1982).Google Scholar
- Karp R.M.; Miller R.E.: Parallel Program Schemata. J. Comput. System Sci. 3, 147–195 (1969).Google Scholar
- Keller R.M.: Parallel Program Schemata and Maximal Parallelism. J. Assoc. Comp. Mach. 20, No3, 514–537 (1973).Google Scholar
- Kwong Y.: On the absence of Livelocks in Parallel Programs. Semantics of Concurrent Computations. Proceedings, Evian, France, Lect. Notes Comput. Sci. 70, 172–190 (1979).Google Scholar
- Mazurkiewicz A.: Concurrent Program Schemes and their Interpretation. Proceedings, Aarhus Workshop on Verification of Parallel Processes (1977).Google Scholar
- Papadimitriou C.H.; Bernstein P.A.; Rothnie J.B.: Some computational problems related to Database Concurrency Control. Proc. Conf. Theoretical Computer Science, Waterloo, Canada, 275–282 (1977).Google Scholar
- Roucairol G.: Mots de synchronisation. RAIRO, Informatique/Computer 12, No4, 277–290 (1978).Google Scholar