Thread chat's agent-list subscription faults when it attaches to an already-released synced query in MeshNodeStreamCache
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- csharp
- Ambito
- backend, observability
Direzione di ricerca
Read the agent-list subscription and error handler in ThreadChatView, then inspect the synced-query lookup and released-entry cleanup in src/MeshWeaver.Hosting/MeshNodeStreamCache.cs. First establish whether a disposed owner can remain reachable; the issue says pod lifecycle evidence around 2026-09-26 18:26:06Z could distinguish teardown from a stale handle. Done when the cause is resolved and the view handles this case appropriately; the issue does not specify whether to resubscribe or end quietly.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
What is failing
ThreadChatView (Blazor thread chat) subscribes to the agent-list synced query (AiSettings|<user>, served by the silo's MeshNodeStreamCache). In this case the subscription arrived after the query's owner had already let go of its shared connection. The cache refused it with ObjectDisposedException ("the owner is disposed, its upstream is unsubscribed…"). The view's agent-list stream terminated, and the view logged that at Error.
Probable cause (low-to-medium confidence)
The refusal itself is deliberate. Since the change that gave every shared subscription an owner (A shutdown releases every shared subscription it owns), the cache fails fast on a subscriber that arrives after the owner is disposed. Before that change, such a subscriber would have waited on a replay that nothing feeds. So the open question is why a live chat view was still subscribing at that point. There are two explanations, and the evidence cannot tell them apart:
- Shutdown or recycle race (benign). The pod's cache (or the hub that owns the query) was being disposed while a Blazor circuit was still rendering the chat. In that case the only defect is that
ThreadChatViewlogs an expected teardown at Error, and it should treatObjectDisposedExceptionfrom this source as end-of-life. - Stale query handle (real defect). The query entry for
AiSettings|<user>was released (idle, or owner torn down) but stayed reachable, so a new subscriber was handed the released owner instead of a freshly created one. That would mean the agent picker in a live chat silently stops populating until reload.
I could not confirm pod shutdown at 18:26:06Z from the evidence available. Checking the pod's lifecycle around that timestamp settles which case this is.
Impact
Minimal as observed: one occurrence, one pod, one user's chat. At worst, that chat's agent list stopped updating until the page was reloaded. No data is affected.
Where to look
ThreadChatView(MeshWeaver.Blazor.Chat): the agent-list query subscription and its error handler (the[ThreadChat:…] the agent list query terminatedlog site). Decide whether anObjectDisposedExceptionthere should re-subscribe, or end quietly at Debug.src/MeshWeaver.Hosting/MeshNodeStreamCache.cs: the synced-query path that raises "has released the shared connection this subscription would ride". Verify that a released query entry is removed from lookup, so the next reader creates a new one and does not hit the disposed owner. Background: Mesh Node Stream Cache, Synced Mesh Node Queries.
No existing incident covers this log site. It is related in spirit to other teardown-time ObjectDisposedException incidents, but it is not a duplicate of any of them.
Evidence
| Fingerprint | 4e48b3826646ffe0 |
| Category | MeshWeaver.Blazor.Chat.ThreadChatView |
| Severity | Error |
| Exception | System.ObjectDisposedException |
| Namespace | memex-cloud |
| Pods | memex-portal-deployment-6c7669df84-9b4rz |
| Occurrences | 1 |
| First seen | 2026-09-26 18:26:06Z |
| Last seen | 2026-09-26 18:26:06Z |
| Routing | not determined — no configured route matches the category MeshWeaver.Blazor.Chat.ThreadChatView. This repository is the configured fallback, not a finding about who owns the fault; the category names the LOGGER, which may not be the subject. |
Recent log lines
2026-09-26 18:26:06Z memex-portal-deployment-6c7669df84-9b4rz fail: MeshWeaver.Blazor.Chat.ThreadChatView[0]
[ThreadChat:38be5244] the agent list query terminated
System.ObjectDisposedException: MeshNodeStreamCache query 'AiSettings|sglauser' has released the shared connection this subscription would ride: the owner is disposed, its upstream is unsubscribed, and a subscriber arriving now would otherwise wait on a replay nothing will feed.
Object name: 'MeshNodeStreamCache query 'AiSettings|sglauser''.
Opened automatically from Admin/_LogIncident/4e48b3826646ffe0. Recurrences are folded into this issue rather than opening new ones.
It also stands for the whole log site b395d7e82e28bc16: other fingerprints of this site fold in here as comments rather than opening tickets of their own.
- Lingua principale
- C#
- Stelle
- 12
- Fork
- 5
- Merge medio
- 5h 8m
- PR unite (30g)
- 979
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di Systemorph/MeshWeaver
-
bug sev:L
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
Systemorph/MeshWeaver#7868 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug sev:L
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
Systemorph/MeshWeaver#7861 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug sev:M
Difficoltà 5/5 Più di una settimana Idoneità per principianti 12/100
Systemorph/MeshWeaver#7842 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
bug sev:L
Difficoltà 4/5 3-5 giorni Idoneità per principianti 15/100
Systemorph/MeshWeaver#7815 ·
I maintainer di solito rispondono entro 1 giorno
-
Activation-record OPEN for MeshWeaver.AI.Codex fails with errno 11 (EAGAIN) on one memex-cloud pod — first burst carrying the #7689 {path} diagnostic; module dropped from that readForse già presa @rbuergi l’ha presa 1 giorno fa. Apertabug sev:L
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
Systemorph/MeshWeaver#7797 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di Systemorph/MeshWeaver
Issue simili
-
needs-area-label
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
I maintainer di solito rispondono entro 2 giorni
-
bug github_actions
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
endercodezz/BYDLO#336 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
SubtitleEdit/subtitleedit#16638 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
sebastienros/jint#4449 ·
I maintainer di solito rispondono entro 1 giorno