Implementing recoverable requests using queues

Transactions have been rigorously defined and extensively studied in the database and transaction processing literature, but little has been said about the handling of the requests for transaction execution in commercial TP systems, especially distributed ones, managing the flow of requests is often as important as executing the transactions themselves. This paper studies fault-tolerant protocols for managing the flow of transaction requests between clients that issue requests and servers that process them. We discuss how to implement these protocols using transactions and recoverable queuing systems. Queuing systems are used to move requests reliably between clients and servers. The protocols use queuing systems to ensure that the server processes each request exactly once and that a client processes each reply at least once. We treat request-reply protocols for single-transaction requests, for multi-transaction requests, and for requests that require interaction with the display after the request is submitted.

[1]  Arlene J. Wipfler CICS: application development and programming , 1987 .

[2]  Philip A. Bernstein,et al.  Concurrency Control and Recovery in Database Systems , 1987 .

[3]  Andrew P. Black,et al.  Implementing Location Independent Invocation , 1990, IEEE Trans. Parallel Distributed Syst..

[4]  Jim Gray,et al.  Notes on Data Base Operating Systems , 1978, Advanced Course: Operating Systems.

[5]  T. Bloom,et al.  Communications in the Mercury system , 1988, [1988] Proceedings of the Twenty-First Annual Hawaii International Conference on System Sciences. Volume II: Software track.

[6]  Jim Gray,et al.  A Transaction Model , 1980, ICALP.

[7]  Andrew Birrell,et al.  Implementing remote procedure calls , 1984, TOCS.

[8]  Randy Pausch,et al.  Adding input and output to the transactional model , 1988 .

[9]  William C. McGee The Information Management System IMS/VS Part V: Transaction Processing Facilities , 1977, IBM Syst. J..

[10]  Arlene J. Wipfler Distributed Processing in the Cics Environment: A Guide to Mro/Isc , 1989 .

[11]  Andrew P. Black,et al.  Fine-grained mobility in the Emerald system , 1987, TOCS.

[12]  Jim Gray,et al.  The Transaction Concept: Virtues and Limitations (Invited Paper) , 1981, VLDB.