This Article 
 Bibliographic References 
 Add to: 
Efficient Distributed Detection of Conjunctions of Local Predicates
August 1998 (vol. 24 no. 8)
pp. 664-677

Abstract—Global predicate detection is a fundamental problem in distributed systems and finds applications in many domains such as testing and debugging distributed programs. This paper presents an efficient distributed algorithm to detect conjunctive form global predicates in distributed systems. The algorithm detects the first consistent global state that satisfies the predicate even if the predicate is unstable. Unlike previously proposed run-time predicate detection algorithms, our algorithm does not require exchange of control messages during the normal computation. All the necessary information to detect predicates is piggybacked on computation messages of application programs. The algorithm is distributed because the predicate detection efforts as well as the necessary information are equally distributed among the processes. We prove the correctness of the algorithm and compare its performance with respect to message, storage, and computational complexities with that of the previously proposed run-time predicate detection algorithms.

[1] O. Babaouglu and M. Raynal, "Specification and Verification of Dynamic Properties in Distributed Computations," J. Parallel and Distributed Computing, Aug. 1995, pp. 173-185.
[2] Ö. Babao$\breve{\rm g}$lu, E. Fromentin, and M. Raynal, "Unified Framework for Expressing and Detecting Run-Time Properties of Distributed Computations," J. Systems and Software, special issue on Software Eng. for Distributed Computing, vol. 33, no. 3, pp. 287-298, June 1996.
[3] R. Cooper and K. Marzullo, "Consistent Detection of Global Predicates," in Proc. Workshop Parallel and Distributed Debugging, ACM Press, New York, pp. 163-173.
[4] C.J. Fidge, "Timestamps in Message Passing Systems that Preserve the Partial Ordering," Proc. 11th Australian Computer Science Conf., pp. 55-66, Feb. 1988.
[5] E. Fromentin, M. Raynal, V.K. Garg, and A.I. Tomlinson, "On the Fly Testing of Regular Patterns in Distributed Computations," Proc. 23rd Int'l Conf. Parallel Processing, pp. 73-76,St. Charles, Ill., Aug. 1994.
[6] V. Garg and B. Waldecker,“Detection of unstable predicates in distributed programs,”inProc. Int. Conf. Foundations of Software Technol. and Theoretical Comput. Sci.,1992, Springer-Verlag.
[7] V.K. Garg and B. Waldecker, "Detection of Weak Unstable Predicates in Distributed Programs," IEEE Trans. Parallel and Distributed Systems, Mar. 1994, pp. 299-307.
[8] V. K. Garg and C. Chase, "Distributed Algorithms for Detecting Conjunctive Predicates," in Proc. Int'l Conf. Distributed Computing Systems, IEEE CS Press, Los Alamitos, Calif., 1995, pp. 423-430.
[9] D. Haban and W. Weigel, "Global Events and Global Breakpoints in Distributed Systems," Proc. 21st Hawaii Int'l Conf. Systems Sciences, pp. 166-175, 1989.
[10] M. Hurfin, N. Plouzeau, and M. Raynal, "Detecting Atomic Sequences of Predicates in Distributed Computations," in Proc. Workshop Parallel and Distributed Debugging, 1993, ACM Press, pp. 32-42.
[11] M. Hurfin and M. Mizuno, "A Complete Set of Satisfaction Rules for Property Detection in Distributed Computations," Proc. Ninth Int'l Conf. Parallel and Distributed Computing Systems (PDCS'96), pp. 156-163,Dijon, France, Sept 1996.
[12] M. Hurfin, M. Mizuno, M. Raynal, and M. Singhal, "Efficient Distributed Detection of Conjunction of Local Predicates," Technical Report 2,731, INRIA, Nov. 1995.
[13] R. Jegou, R. Medina, and L. Nourine, "Linear Space Algorithm for On-Line Detection of Global States," Proc. Int'l Workshop on Structures in Concurrency Theory, 1995.
[14] E.D. Lazowska, J. Zahorjan, D. Cheriton, and W. Zwaenepoel, "File Access Performance of Diskless Workstations," ACM Trans. Computer Systems, vol. 4, no. 3, pp. 238-268, Aug. 1986.
[15] Y. Manabe and M. Imase,“Global conditions in debugging distributed programs,”J. Parallel Distrib. Comput.,pp. 62–69, 1992.
[16] F. Mattern, "Virtual Time and Global States of Distributed Systems," Proc. Int'l Workshop Parallel and Distributed Algorithms, North-Holland, pp. 215-226,Chateau de Bonas, France, Oct. 1988.
[17] B.P. Miller and J. Choi, "Breakpoints and Halting in Distributed Programs," in Proc. Int'l Conf. Distributed Computing Systems, IEEE CS Press, 1988, pp. 316-323.
[18] M. Raynal and M. Singhal, "Logical Clocks: A Way to Capture Causality in Distributed Systems," Computer, vol. 29, no. 2, pp. 49-56, Feb. 1996.
[19] S.D. Stoller and F.B. Schneider, "Faster Possibility Detection by Combining Two Approaches," in Proc. Workshop Distributed Algorithms, LNCS971, Springer-Verlag, 1995, pp. 318-332.
[20] S. Venkatesan and B. Dathan, "Testing and Debugging Distributed Programs Using Global Predicates, IEEE Trans. Software Eng., vol. 21, no. 2, pp. 163-177, Feb. 1995.

Index Terms:
Distributed systems, on-the-fly global predicate detection.
Michel Hurfin, Masaaki Mizuno, Michel Raynal, Mukesh Singhal, "Efficient Distributed Detection of Conjunctions of Local Predicates," IEEE Transactions on Software Engineering, vol. 24, no. 8, pp. 664-677, Aug. 1998, doi:10.1109/32.707701
Usage of this product signifies your acceptance of the Terms of Use.