Skip to content

Commit 466c5c2

Browse files
committed
Propagate linked task to add_civ_to_object to retain original flow
The linked task should only run if the change was successful
1 parent bece572 commit 466c5c2

1 file changed

Lines changed: 12 additions & 19 deletions

File tree

app/grandchallenge/components/tasks.py

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1249,7 +1249,7 @@ def get_object(*, app_label, model_name, object_pk):
12491249

12501250

12511251
def add_civ_to_object(
1252-
*, civ, obj, current_value, error_handler, interface, user
1252+
*, civ, obj, current_value, error_handler, interface, user, linked_task
12531253
):
12541254
from grandchallenge.algorithms.models import Job
12551255

@@ -1269,6 +1269,12 @@ def add_civ_to_object(
12691269
logger.error(e, exc_info=True)
12701270
return
12711271

1272+
if linked_task is not None:
1273+
logger.info("Scheduling linked task")
1274+
on_commit(signature(linked_task).apply_async)
1275+
else:
1276+
logger.info("No linked task, task complete")
1277+
12721278

12731279
def add_image_to_object(
12741280
*,
@@ -1277,6 +1283,7 @@ def add_image_to_object(
12771283
interface,
12781284
error_handler,
12791285
user,
1286+
linked_task,
12801287
):
12811288
from grandchallenge.components.models import ComponentInterfaceValue
12821289

@@ -1315,6 +1322,7 @@ def add_image_to_object(
13151322
error_handler=error_handler,
13161323
interface=interface,
13171324
user=user,
1325+
linked_task=linked_task,
13181326
)
13191327

13201328

@@ -1365,14 +1373,9 @@ def add_panimg_image_to_object(
13651373
interface=interface,
13661374
error_handler=error_handler,
13671375
user=upload_session.creator,
1376+
linked_task=linked_task,
13681377
)
13691378

1370-
if linked_task is not None:
1371-
logger.info("Scheduling linked task")
1372-
on_commit(signature(linked_task).apply_async)
1373-
else:
1374-
logger.info("No linked task, task complete")
1375-
13761379

13771380
@acks_late_micro_short_task(
13781381
retry_on=(LockNotAcquiredException,), delayed_retry=False
@@ -1416,14 +1419,9 @@ def add_dicom_image_set_to_object(
14161419
interface=interface,
14171420
error_handler=error_handler,
14181421
user=dicom_image_set.dicom_image_set_upload.creator,
1422+
linked_task=linked_task,
14191423
)
14201424

1421-
if linked_task is not None:
1422-
logger.info("Scheduling linked task")
1423-
on_commit(signature(linked_task).apply_async)
1424-
else:
1425-
logger.info("No linked task, task complete")
1426-
14271425

14281426
@acks_late_micro_short_task(
14291427
retry_on=(LockNotAcquiredException,), delayed_retry=False
@@ -1488,14 +1486,9 @@ def add_file_to_object(
14881486
error_handler=error_handler,
14891487
interface=interface,
14901488
user=user_upload.creator,
1489+
linked_task=linked_task,
14911490
)
14921491

1493-
if linked_task is not None:
1494-
logger.info("Scheduling linked task")
1495-
on_commit(signature(linked_task).apply_async)
1496-
else:
1497-
logger.info("No linked task, task complete")
1498-
14991492

15001493
@acks_late_2xlarge_task(retry_on=(LockNotAcquiredException,))
15011494
@transaction.atomic

0 commit comments

Comments
 (0)