worker: Wait until datasets are written before quitting

Avoids a race condition in worker_impl.py where HDF5 dataset saving was
cut off before it finished for large datasets.
This commit is contained in:
Charles Baynham 2023-05-23 20:42:10 +01:00 committed by David Nadlinger
parent 58cc3b8d0a
commit c2b0c97640
1 changed files with 2 additions and 1 deletions

View File

@ -347,12 +347,13 @@ def main():
elif action == "analyze": elif action == "analyze":
try: try:
exp_inst.analyze() exp_inst.analyze()
put_completed()
finally: finally:
# browser's analyze shouldn't write results, # browser's analyze shouldn't write results,
# since it doesn't run the experiment and cannot have rid # since it doesn't run the experiment and cannot have rid
if rid is not None: if rid is not None:
write_results() write_results()
put_completed()
elif action == "examine": elif action == "examine":
examine(ExamineDeviceMgr, ExamineDatasetMgr, obj["file"]) examine(ExamineDeviceMgr, ExamineDatasetMgr, obj["file"])
put_completed() put_completed()