Subject Name: replicatedworkers
Souce Code Language: Java
Number of Versions: 1
Number of Variants: 1
   - orig
Error expected:
   orig: deadlock
Non-determinisitc: yes

***orig***
LOC: 342 (noncomment Java source code)
Classes: 14
Methods: 50
Fields: 55
Statements: 201
wait() call: 5
notifyAll() call: 2
Sync blocks: 17
Thread start() calls: 1
New expressions: 22

The replicatedworkers subject implements the design pattern
described in [4].  The version presented here is based on the
bug patterns reported in [1] and is a research object in
references [2] and [3]:

References:

[1] Y. Eytani, and S. Ur. "Compiling a Benchmark of Documented Multi-threaded Bugs"
in Proceedings of the 18th International Symposium on Parallel and Distributed 
Processing: 266. April 2004.

[2] Y. Eytani, K. Havelund, S.D. Stoller, and S. Ur.  "Toward a Framework and 
Benchmark for Testing Tools for Multi-Threaded Programs" in Concurrency and 
Computation: Practice and Experience, 19(3): 267-279. 2006.

[3] Dwyer, Matthew B. and Person, Suzette and Elbaum, Sebastian.
Controlling factors in evaluating path-sensitive error detection techniques,
SIGSOFT '06/FSE-14: Proceedings of the 14th ACM SIGSOFT international symposium
on Foundations of software engineering, 2006, isbn 1-59593-468-5, pp. 92--104,
Portland, Oregon, USA, ACM, New York, NY, USA.

[4] Freeman, Eric, and Hupfer, Susanne, and Arnold, Ken.  JavaSpaces principles,
patterns and practice. Addison-Wesley 1999. ISBN 0201309556, pp. 344.
