diff --git a/perxis/extensions/extension_service.py b/perxis/extensions/extension_service.py
index 664d11e409635a97a438394e45a26e28a31cdfa3..6da5bfb386ded0af25799f27c5b8d657a1ec6ec1 100644
--- a/perxis/extensions/extension_service.py
+++ b/perxis/extensions/extension_service.py
@@ -121,6 +121,13 @@ class ExtensionService(
         now = datetime.datetime.now()
 
         for operation_meta in self.__operations.values():
+            task_is_not_running = operation_meta.task.done() or operation_meta.task.cancelled()
+
+            # Если task фактически не работает то операцию нужно пометить как выполненную. Это может произойти в случае
+            # неотловленного исключения, например
+            if task_is_not_running:
+                operation_meta.was_finished = True
+
             if not operation_meta.was_finished:
                 continue