@@ -118,6 +118,7 @@ def __init__(
118118
119119 self ._port_key_tracker = _PortKeyTracker ()
120120 self ._task_uploading : Task | None = None
121+ self ._task_uploading_followup : Task | None = None
121122 self ._task_scheduler_worker : Task | None = None
122123 self ._schedule_all_ports_for_upload : bool = False
123124
@@ -171,14 +172,22 @@ def _remove_downloads(future: Future) -> None:
171172 except Exception as e : # pylint: disable=broad-except
172173 self ._last_upload_error_tracker [port_key ] = e
173174
174- create_task (self ._port_key_tracker .remove_all_uploading ())
175+ self ._task_uploading_followup = create_task (
176+ self ._port_key_tracker .remove_all_uploading ()
177+ )
175178
176179 self ._task_uploading .add_done_callback (_remove_downloads )
177180
178181 async def _uploading_task_cancel (self ) -> None :
179182 if self ._task_uploading is not None :
180183 await _cancel_task (self ._task_uploading , self .task_cancellation_timeout_s )
181184 await self ._port_key_tracker .move_all_uploading_to_pending ()
185+ self ._task_uploading = None
186+ if self ._task_uploading_followup is not None :
187+ await _cancel_task (
188+ self ._task_uploading_followup , self .task_cancellation_timeout_s
189+ )
190+ self ._task_uploading_followup = None
182191
183192 async def _scheduler_worker (self ) -> None :
184193 if await self ._port_key_tracker .are_pending_ports_uploading ():
0 commit comments