This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Concurrency Control and View Notification Algorithms for Collaborative Replicated Objects
April 1998 (vol. 47 no. 4)
pp. 458-471

Abstract—This paper describes algorithms for implementing a high-level programming model for synchronous distributed groupware applications. In this model, several application data objects may be atomically updated, and these objects automatically maintain consistency with their replicas using an optimistic algorithm. Changes to these objects may be optimistically or pessimistically observed by view objects by taking consistent snapshots. The algorithms for both update propagation and view notification are based upon optimistic guess propagation principles adapted for fast commit by using primary copy replication techniques. The main contribution of the paper is the synthesis of these two algorithmic techniques—guess propagation and primary copy replication—for implementing a framework that is easy to program to and is well suited for the needs of groupware applications.

[1] H.M. Adbel-Wahab and M.A. Feit, "XTV: A Framework for Sharing X Window Clients in Remote Synchronous Collaboration," Proc. IEEE Tricomm '91: Comm. for Distributed Applications and Systems, Apr. 1991.
[2] D.F. Bacon and R.E. Strom, "Optimistic Parallelization of Communicating Sequential Processes," Proc. SIGPLAN '91 Symp. Principals and Practice of Parallel Programming, pp. 155-166,Williamsburg, Va.,21-24 Apr. 1991.
[3] G. Banavar, S. Bhola, K. Miller, B. Mukherjee, and M. Ward, "The Tradeoff of Responsiveness versus Regularity in Optimistic Groupware," Forthcoming IBM T.J. Watson Research Center technical report, 1997.
[4] K. Birman, A. Schiper, and P. Stephenson, “Lightweight Causal and Atomic Group Multicast,” ACM Trans. Computer Systems, vol. 9, no. 3, pp. 272-314, Aug. 1991.
[5] W. Chu and J. Hellerstein, "The Exclusive-Writer Approach to Updating Replicated Files in Distributed Processing Systems," IEEE Trans. Computers, vol. 34, no. 6, pp. 489-500, June 1985.
[6] C. Cowan and H. Lutfiyya, "A Wait-Free Algorithm for Optimistic Programming: HOPE Realized," 16th Int'l Conf. Distributed Computing Systems (ICDCS'96), IEEE Press, 1996, pp. 484-493.
[7] C.A. Ellis and S.J. Gibbs, "Concurrency Control in Groupware Systems," Proc. ACM SIGMOD Conf. Management of Data, ACM Press, New York, 1989, pp. 399-407.
[8] D. Jefferson and A. Motro, "The Time Warp Mechanism for Database Concurrency Control," Proc. Int'l Conf. Data Eng., pp. 474-481,Los Angeles, Feb. 1986.
[9] D.R. Jefferson, "Virtual Time," ACM Trans. Programming Languages and Systems, vol. 7, no. 3, pp. 404-425, July 1985.
[10] A. Karsenty and M. Beaudouin-Lafon, “An Algorithm for Distributed Groupware Applications,” Proc. 13th Int'l Conf. Distributed Computing Systems, pp. 195-202, May 1993.
[11] G.E. Krasner and S.T. Pope, "A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk," J. Object Oriented Programming, pp. 26-49, Aug./Sept. 1988.
[12] L. Lamport, "Time, clocks and the ordering of events in a distributed system," Comm. ACM, vol. 21, no. 7, pp. 558-565, July 1978.
[13] M.A. Linton, P.R. Calder, and J.M. Vlissides, "InterViews: A C++ Graphical Interface Toolkit," Proc. USENIX C++ Workshop, p. 11,Santa Fe, N.M., Nov. 1987.
[14] A. Prakash and H. Shim, "DistView: Support for Building Efficient Collaborative Applications Using Replicated Objects," Proc. ACM Conf. Computer-Supported Cooperative Work, pp. 153-164, ACM Press, 1994.
[15] C. Schuckmann, L. Kirchner, J. Schummer, and J.M. Haake, "Designing Object-Oriented Synchronous Groupware with COAST," Proc. Sixth ACM Conf. Computer-Supported Cooperative Work, pp. 30-38, ACM Press, Nov. 1996.
[16] R.E. Strom and S.A Yemini, "Synthesizing Distributed and Parallel Programs Through Optimistic Transformations," Current Advances in Distributed Computing and Communications, Y. Yemini, ed., pp. 234-256.Rockville, Md.: Computer Science Press, 1987.

Index Terms:
Groupware, model-view-controller programming paradigm, replicated objects, optimistic concurrency control, optimistic views, pessimistic views.
Citation:
Robert Strom, Guruduth Banavar, Kevan Miller, Atul Prakash, Michael Ward, "Concurrency Control and View Notification Algorithms for Collaborative Replicated Objects," IEEE Transactions on Computers, vol. 47, no. 4, pp. 458-471, April 1998, doi:10.1109/12.675714
Usage of this product signifies your acceptance of the Terms of Use.