From a260b1c6b1ad6aefad803c9720059b7ceb4ab45d Mon Sep 17 00:00:00 2001 From: Megan Henning <meganhenning@flywheel.io> Date: Fri, 19 Jan 2018 17:24:53 -0600 Subject: [PATCH] Use copy of base analysis in loop --- api/jobs/batch.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/api/jobs/batch.py b/api/jobs/batch.py index ad497b74..a6258aed 100644 --- a/api/jobs/batch.py +++ b/api/jobs/batch.py @@ -147,10 +147,10 @@ def run(batch_job): tags.append('batch') if gear.get('category') == 'analysis': - analysis = proposal.get('analysis', {}) - if not analysis.get('label'): + analysis_base = proposal.get('analysis', {}) + if not analysis_base.get('label'): time_now = datetime.datetime.utcnow() - analysis['label'] = {'label': '{} {}'.format(gear_name, time_now)} + analysis_base['label'] = {'label': '{} {}'.format(gear_name, time_now)} an_storage = AnalysisStorage() acq_storage = AcquisitionStorage() @@ -172,6 +172,8 @@ def run(batch_job): if gear.get('category') == 'analysis': + analysis = copy.deepcopy(analysis_base) + # Create analysis acquisition_id = inputs.values()[0].get('id') session_id = acq_storage.get_container(acquisition_id, projection={'session':1}).get('session') @@ -195,6 +197,8 @@ def run(batch_job): if gear.get('category') == 'analysis': + analysis = copy.deepcopy(analysis_base) + # Create analysis result = an_storage.create_job_and_analysis('sessions', bson.ObjectId(dest['id']), analysis, job_map, origin, None) job = result.get('job') -- GitLab