Skip to content

Commit 9f5cf43

Browse files
raise error on broker mismatch
1 parent 60d76de commit 9f5cf43

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

taskiq/abc/broker.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
from taskiq.acks import AckableMessage
3030
from taskiq.decor import AsyncTaskiqDecoratedTask
3131
from taskiq.events import TaskiqEvents
32+
from taskiq.exceptions import TaskRejectedError
3233
from taskiq.formatters.proxy_formatter import ProxyFormatter
3334
from taskiq.message import BrokerMessage
3435
from taskiq.result_backends.dummy import DummyResultBackend
@@ -517,7 +518,13 @@ def _register_task(
517518
By default we register tasks in local task registry.
518519
But this behaviour can be changed in subclasses.
519520
521+
This method may raise TaskRejectedError if task has already been registered to a different broker.
522+
520523
:param task_name: Name of a task.
521524
:param task: Decorated task.
522525
"""
526+
if task.broker != self:
527+
raise TaskRejectedError(
528+
f"Task already has a different broker ({task.broker})",
529+
)
523530
self.local_task_registry[task_name] = task

0 commit comments

Comments
 (0)