some error detection: make sure the set of reported workers has no duplicate entries
This commit is contained in:
parent
d7aebc7be0
commit
4d60ca0c3c
@ -59,12 +59,15 @@ if __name__ == '__main__':
|
|||||||
|
|
||||||
tasksq, resultsq, masterq, minionsq = get_qs(m)
|
tasksq, resultsq, masterq, minionsq = get_qs(m)
|
||||||
|
|
||||||
|
workers = []
|
||||||
|
|
||||||
if not options.participants:
|
if not options.participants:
|
||||||
print "wait on all announced participants"
|
print "wait on all announced participants"
|
||||||
participants = 0
|
participants = 0
|
||||||
while not masterq.empty():
|
while not masterq.empty():
|
||||||
participants += 1
|
participants += 1
|
||||||
worker = masterq.get()
|
worker = masterq.get()
|
||||||
|
workers.append(worker)
|
||||||
print "%d: %s is ready" % (participants, worker)
|
print "%d: %s is ready" % (participants, worker)
|
||||||
if participants == 0:
|
if participants == 0:
|
||||||
print "nobody found"
|
print "nobody found"
|
||||||
@ -74,8 +77,14 @@ if __name__ == '__main__':
|
|||||||
print "wait on %d participants" % participants
|
print "wait on %d participants" % participants
|
||||||
for i in xrange(participants):
|
for i in xrange(participants):
|
||||||
worker = masterq.get()
|
worker = masterq.get()
|
||||||
|
workers.append(worker)
|
||||||
print "%d of %d: %s is ready" % (i+1, participants, worker)
|
print "%d of %d: %s is ready" % (i+1, participants, worker)
|
||||||
|
|
||||||
|
if len(set(workers)) != len(workers):
|
||||||
|
for i in workers:
|
||||||
|
minionsq.put("slay")
|
||||||
|
raise Exception("duplicate workers reported")
|
||||||
|
|
||||||
results = []
|
results = []
|
||||||
|
|
||||||
widgets = ['submit jobs: ', Percentage(), ' ', Bar(), ' ', ETA()]
|
widgets = ['submit jobs: ', Percentage(), ' ', Bar(), ' ', ETA()]
|
||||||
|
Loading…
Reference in New Issue
Block a user