From c2b0c97640ad4afca5b00fec9fc7ed350fde9dee Mon Sep 17 00:00:00 2001 From: Charles Baynham Date: Tue, 23 May 2023 20:42:10 +0100 Subject: [PATCH] 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. --- artiq/master/worker_impl.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/artiq/master/worker_impl.py b/artiq/master/worker_impl.py index ed7ec748e..7c5ad2c2f 100644 --- a/artiq/master/worker_impl.py +++ b/artiq/master/worker_impl.py @@ -347,12 +347,13 @@ def main(): elif action == "analyze": try: exp_inst.analyze() - put_completed() finally: # browser's analyze shouldn't write results, # since it doesn't run the experiment and cannot have rid if rid is not None: write_results() + + put_completed() elif action == "examine": examine(ExamineDeviceMgr, ExamineDatasetMgr, obj["file"]) put_completed()