trustgraph/trustgraph-flow
Sreeram Venkatasubramanian 928bda41ae fix: prevent duplicate dispatcher creation race condition in invoke_global_service
Concurrent coroutines could all pass the `if key in self.dispatchers` check
before any of them wrote the result back, because `await dispatcher.start()`
yields to the event loop. This caused multiple Pulsar consumers to be created
on the same shared subscription, distributing responses round-robin and
dropping ~2/3 of them — manifesting as a permanent spinner in the Workbench UI.

Apply a double-checked asyncio.Lock in both `invoke_global_service` and
`invoke_flow_service` so only one dispatcher is ever created per service key.
2026-03-26 14:22:38 +05:30
..
trustgraph fix: prevent duplicate dispatcher creation race condition in invoke_global_service 2026-03-26 14:22:38 +05:30
pyproject.toml Prepare 2.2 release branch (#704) 2026-03-22 15:23:23 +00:00
README.md Maint/fix build env (#84) 2024-09-30 19:47:09 +01:00