Unhandled rejection when the app terminates before the Redis transport connects
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 65/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- nodejs, redis, typescript
- Ambito
- backend, distributed-systems
Direzione di ricerca
Parti dal costruttore di Transmit, dove secondo l’issue viene chiamato this.#bus?.subscribe(...), e segui come il trasporto Redis gestisce le connessioni e le sottoscrizioni rifiutate. Riproduci il problema con lo scenario segnalato: arresto prima della connessione oppure Redis non disponibile all’avvio. Il lavoro è completato quando la sottoscrizione non riuscita non fa più terminare Node con codice di uscita 1; valuta se il comportamento di nuovo tentativo di riconnessione rientra nell’ambito.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Transmit's constructor calls void this.#bus?.subscribe(this.#transportChannel, …). When the app shuts down while the Redis transport is still connecting (e.g. node ace migration:run --help with @adonisjs/transmit and the redis transport), the transport's connections are closed, subscribe rejects with ioredis' Error: Connection is closed. and, since void doesn't handle it, Node exits with code 1. The same likely happens if Redis is down at boot and the queued command fails.
Suggested fix: this.#bus?.subscribe(...).catch((error) => debug('transport subscribe failed: %O', error)) (or log it), and maybe retry on the bus' reconnect.
Versions: @boringnode/transmit 0.4.2, @boringnode/bus 0.10.0, ioredis 5.11.1, Node 24.
- Lingua principale
- TypeScript
- Stelle
- 43
- Fork
- 9
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun 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 boringnode/bus
-
good first issue
Difficoltà 4/5 3-5 giorni Idoneità per principianti 42/100
boringnode/bus#41 · 3 commenti ·
-
Dependency DashboardAperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 12/100
boringnode/bus#5 ·
Tutte le issue di boringnode/bus
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
phivk/rubiks-lab#33 ·
I maintainer di solito rispondono entro 1 giorno
-
BUG:Edit Album strips spaces from the password so albums with a leading/trailing space in the password can't be editedForse già presa @ManyaJain111 l’ha presa oggi. Apertabug enhancement possible-duplicate
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
AOSSIE-Org/PictoPy#1637 · 4 commenti ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
chaitin/MonkeyCode#1437 ·
I maintainer di solito rispondono entro 1 giorno
-
rtdb-info-connected-order test: unhandled 'connection is closed' rejection fails the CLI suiteAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
area:cards enhancement migration ready-for-agent
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
fil-donadoni/tolaria#6309 ·
I maintainer di solito rispondono entro 1 giorno