Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[Bug]: snapshot download mishandles reader close errors

Chiusa Adatta ai principianti
#2,445 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@ktsoator ci sta già lavorando.

Dal 10/10/2026.

  • #2446 di @ktsoator — aperta

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
82/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
gcp, go
Ambito
cloud

Direzione di ricerca

Il bug si trova nella chiusura differita del reader all'interno di fetchFromGCSWithZstd in pkg/objectstorage/objects.go, intorno alle righe 369-377. Leggi come viene impostato il valore di ritorno dell'errore della funzione, quindi modifica la chiusura differita in modo che assegni l'errore di chiusura solo quando non esiste un errore precedente. È completato quando un download riuscito restituisce l'errore di chiusura e un download fallito mantiene l'errore originale. Controlla i test esistenti del pacchetto oppure aggiungine uno che forzi Close() a fallire.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

area/storage kind/bug

The deferred reader close in fetchFromGCSWithZstd checks err != nil before assigning the close error.

When the reader's Close() returns an error:

  • If decompression succeeds, the function returns nil, discarding the close error.
  • If decompression also fails, the close error overwrites the original decompression error.

The close error should be returned only when the download otherwise succeeds. If the download already failed, its original error should be preserved.

Lingua principale
Go
Stelle
5.7k
Fork
612
Merge medio
2g 15h
PR unite (30g)
566

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di agent-substrate/substrate

Tutte le issue di agent-substrate/substrate

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.