Review fleet reconciliation: what breaks while a gateway rebuilds its view
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
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- typescript
- Ambito
- backend
Direzione di ricerca
Start with the behavior described in #410, then trace how worker reports rebuild the gateway’s lease, device and request state and what requests see during that process. Resolve whether events and component installs are in scope. Done means a list of reconciliation findings, each marked accepted or paired with a proposed fix.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Request: none
Problem
A gateway keeps an in-memory view of the fleet: which worker holds which lease, device and request. It rebuilds that view from what workers report. While it rebuilds — after a gateway restart, a worker reconnect, or a worker forgotten past retention — its view and the workers' truth can disagree. Nobody has reviewed, as a whole, what goes wrong in that window and who wins when the two disagree.
Known case
From #410 (caller-chosen lease IDs). After a gateway restart, the gateway has not yet heard from every worker. A new request with lease ID myid is granted on worker w2, while worker w1 still holds a lease myid from before the restart. When w1 reports, two workers hold myid.
What #410 does today: the first lease reported keeps myid. The gateway logs a warning and does not route to the second. Nobody can renew the second, so it expires at its TTL, holding a device until then.
What this issue asks for
A review of fleet reconciliation for problems of this kind, not only this case:
- every piece of gateway state rebuilt from worker reports, and what a request sees while it is incomplete;
- every clash between the gateway's view and a worker's truth, and which side wins;
- for each, whether the current answer is acceptable or needs a fix.
The output is a list of findings, each with a proposed fix or "accepted". Fixes become their own tasks.
Open questions
- Scope of the review: lease, device and request state only, or events and component installs too?
Written by an agent.
- Lingua principale
- TypeScript
- Stelle
- 15
- Fork
- 1
- Merge medio
- 10h 58m
- PR unite (30g)
- 123
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
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 callstackincubator/simlock
-
bug:triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
callstackincubator/simlock#400 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug:new
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
callstackincubator/simlock#350 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Let requesters choose the lease IDForse già presa Una pull request collegata a questa issue è aperta o già unita. Apertafeature:spec
Difficoltà 5/5 Più di una settimana Idoneità per principianti 45/100
callstackincubator/simlock#410 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
bug:new flaky-test
Difficoltà 3/5 1-2 giorni Idoneità per principianti 56/100
callstackincubator/simlock#407 ·
I maintainer di solito rispondono entro 1 giorno
-
bug:new
Difficoltà 3/5 1-2 giorni Idoneità per principianti 65/100
callstackincubator/simlock#406 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di callstackincubator/simlock
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
wardian-app/Wardian#1603 ·
I maintainer di solito rispondono entro 1 giorno
-
Sign the pledgeAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
input-output-hk/devx-updates#168 ·
I maintainer di solito rispondono entro 1 giorno
-
triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
github/docs#46222 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
agent-ready area: config area: skills type: chore upstream: brain-kit
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 95/100
-
dev experience frontend good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
cuttle-cards/cuttle#1403 ·
I maintainer di solito rispondono entro 1 giorno