Ignore:
Timestamp:
Mar 1, 2010 11:32:32 AM (14 years ago)
Author:
Ted Faber <faber@…>
Branches:
axis_example, compt_changes, info-ops, master, version-3.01, version-3.02
Children:
6d07908
Parents:
dadc4da
Message:

correctly handle synch revocation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • fedd/federation/experiment_control.py

    rdadc4da rf52f5df  
    10811081                    % mins)
    10821082            if not revoked and \
    1083                     len([ t.getName() for t in threads if not t.rv ]) > 0:
     1083                    len([ t.getName() for t in threads if t.rv == False]) > 0:
    10841084                # a testbed has failed.  Revoke this experiment's
    10851085                # synchronizarion values so that sub experiments will not
     
    10921092                        self.synch_store.revoke_key(k)
    10931093                revoked = True
    1094 
    1095         thread_pool.clear()
    10961094
    10971095        failed = [ t.getName() for t in threads if not t.rv ]
     
    11171115                            pdata=thread_pool, trace_file=self.trace_file)
    11181116                    t.start()
    1119                 # Wait until all finish
    1120                 thread_pool.wait_for_all_done()
     1117                # Wait until all finish (if any are being stopped)
     1118                if succeeded:
     1119                    thread_pool.wait_for_all_done()
    11211120
    11221121                # release the allocations
Note: See TracChangeset for help on using the changeset viewer.