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

google-auth: connection leaks in urllib3 transport and metadata helper during mTLS updates

Aperta
#17,755 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
72/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
gcp, python
Ambito
backend, cloud

Direzione di ricerca

Leggi google/auth/transport/urllib3.py e google/auth/compute_engine/_metadata.py, iniziando da configure_mtls_channel e dal percorso di mounting di MdsMtlsAdapter per ogni richiesta. Verifica che il vecchio PoolManager venga ripulito e che l’adattatore dei metadati venga riutilizzato o chiuso invece di accumulare socket, quindi aggiungi o esegui test di regressione mirati per entrambi i percorsi.

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

Descrizione

When mTLS is configured or dynamically updated, the SDK creates and mounts new HTTP adapters/transports but leaves the old ones hanging. While PR #17689 addressed this for the requests transport, the leak still exists in two other places:

  1. urllib3 transport (google/auth/transport/urllib3.py)
    In configure_mtls_channel, self.http = new_http replaces the old PoolManager. We need to call .clear() on the old PoolManager instance before overwriting it so that the active connection pool is cleaned up.

  2. Compute Engine metadata (google/auth/compute_engine/_metadata.py)
    If mTLS is enabled, _metadata.py instantiates and mounts a new MdsMtlsAdapter on the session for every single request. Overwriting the mounted adapter without closing the old one leaks sockets. We should either cache and reuse the adapter or close the old one before mounting.

Lingua principale
Python
Stelle
5.4k
Fork
1.8k
Merge medio
2g 12h
PR unite (30g)
143

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 googleapis/google-cloud-python

Tutte le issue di googleapis/google-cloud-python

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.