server.web.routes.v2.fsm.array ============================== .. py:module:: server.web.routes.v2.fsm.array .. autoapi-nested-parse:: Routes for Arrays. Attributes ---------- .. autoapisummary:: server.web.routes.v2.fsm.array.logger server.web.routes.v2.fsm.array.SessionMaker Functions --------- .. autoapisummary:: server.web.routes.v2.fsm.array.add_array server.web.routes.v2.fsm.array.record_array_batch_num server.web.routes.v2.fsm.array.transition_array_to_launched server.web.routes.v2.fsm.array._update_task_instance server.web.routes.v2.fsm.array.log_array_distributor_id server.web.routes.v2.fsm.array.get_array_max_concurrently_running server.web.routes.v2.fsm.array.transition_to_killed server.web.routes.v2.fsm.array._update_task_instance_killed Module Contents --------------- .. py:data:: logger .. py:data:: SessionMaker .. py:function:: add_array(request: fastapi.Request) -> Any :async: Return an array ID by workflow and task template version ID. If not found, bind the array. .. py:function:: record_array_batch_num(array_id: int, request: fastapi.Request) -> Any :async: Record a batch number to associate sets of task instances with an array submission. .. py:function:: transition_array_to_launched(array_id: int, request: fastapi.Request) -> Any :async: Transition TIs associated with an array_id and batch_num to launched. .. py:function:: _update_task_instance(array_id: int, batch_num: int, next_report: int) -> None .. py:function:: log_array_distributor_id(array_id: int, request: fastapi.Request) -> Any :async: Add distributor_id, stderr/stdout paths to the DB for all TIs in an array. .. py:function:: get_array_max_concurrently_running(array_id: int | None = None, workflow_id: int | None = None, task_template_version_id: int | None = None) -> Any :async: Return the maximum concurrency of this array. .. py:function:: transition_to_killed(array_id: int, request: fastapi.Request) -> Any :async: Transition TIs from KILL_SELF to ERROR_FATAL. Also mark parent Tasks with status=ERROR_FATAL if they're in a killable state. .. py:function:: _update_task_instance_killed(array_id: int, batch_num: int) -> None Bulk update TaskInstances in (array_id, batch_num) from KILL_SELF.