Skip to content

Commit a33fee8

Browse files
authored
🐛Computational backend: if a pipeline raises, it should not prevent handling of other pipelines (#6295)
1 parent 7550a9c commit a33fee8

File tree

1 file changed

+5
-3
lines changed
  • services/director-v2/src/simcore_service_director_v2/modules/comp_scheduler

1 file changed

+5
-3
lines changed

services/director-v2/src/simcore_service_director_v2/modules/comp_scheduler/base_scheduler.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
from pydantic import PositiveInt
3131
from servicelib.common_headers import UNDEFINED_DEFAULT_SIMCORE_USER_AGENT_VALUE
3232
from servicelib.rabbitmq import RabbitMQClient, RabbitMQRPCClient
33-
from servicelib.utils import logged_gather
33+
from servicelib.utils import limited_gather
3434

3535
from ...constants import UNDEFINED_STR_METADATA
3636
from ...core.errors import (
@@ -220,7 +220,7 @@ async def stop_pipeline(
220220
async def schedule_all_pipelines(self) -> None:
221221
self.wake_up_event.clear()
222222
# if one of the task throws, the other are NOT cancelled which is what we want
223-
await logged_gather(
223+
await limited_gather(
224224
*(
225225
self._schedule_pipeline(
226226
user_id=user_id,
@@ -234,8 +234,10 @@ async def schedule_all_pipelines(self) -> None:
234234
iteration,
235235
), pipeline_params in self.scheduled_pipelines.items()
236236
),
237+
reraise=False,
237238
log=_logger,
238-
max_concurrency=40,
239+
limit=40,
240+
tasks_group_prefix="computational-scheduled-pipeline",
239241
)
240242

241243
async def _get_pipeline_dag(self, project_id: ProjectID) -> nx.DiGraph:

0 commit comments

Comments
 (0)