Connection aborted in google/oauth2 affecting firebase

Aperta
#794 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
python

Direzione di ricerca

Inizia in google/oauth2/_client.py, in _token_endpoint_request_no_throw e _perform_request, usando il percorso delle chiamate di firebase_admin/messaging.py nel traceback per comprendere il problema. Riproduci il problema durante il refresh del token ed esamina la gestione degli errori ritentabili; il lavoro è completato quando Connection aborted è coperto dal comportamento di retry e il test pertinente ha esito positivo.

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

Descrizione

api: core

Connection aborted didn't included in retryable list and any firebase API calls fails frequently.

Traceback (most recent call last):
  File "/usr/src/app/notifications/services/notification_service/providers/mobile.py", line 94, in _send_notification
    firebase.send(fb_message, app=firebase_app)
  File "/usr/local/lib/python3.10/site-packages/firebase_admin/messaging.py", line 121, in send
    return _get_messaging_service(app).send(message, dry_run)
  File "/usr/local/lib/python3.10/site-packages/firebase_admin/messaging.py", line 411, in send
    resp = self._client.body(
  File "/usr/local/lib/python3.10/site-packages/firebase_admin/_http_client.py", line 131, in body
    resp = self.request(method, url, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/firebase_admin/_http_client.py", line 118, in request
    resp = self._session.request(method, self.base_url + url, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/google/auth/transport/requests.py", line 577, in request
    self.credentials.refresh(auth_request)
  File "/usr/local/lib/python3.10/site-packages/google/oauth2/service_account.py", line 445, in refresh
    access_token, expiry, _ = _client.jwt_grant(
  File "/usr/local/lib/python3.10/site-packages/google/oauth2/_client.py", line 308, in jwt_grant
    response_data = _token_endpoint_request(
  File "/usr/local/lib/python3.10/site-packages/google/oauth2/_client.py", line 268, in _token_endpoint_request
    response_status_ok, response_data, retryable_error = _token_endpoint_request_no_throw(
  File "/usr/local/lib/python3.10/site-packages/google/oauth2/_client.py", line 215, in _token_endpoint_request_no_throw
    request_succeeded, response_data, retryable_error = _perform_request()
  File "/usr/local/lib/python3.10/site-packages/google/oauth2/_client.py", line 191, in _perform_request
    response = request(
  File "/usr/local/lib/python3.10/site-packages/google/auth/transport/requests.py", line 192, in __call__
    raise new_exc from caught_exc
google.auth.exceptions.TransportError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
Lingua principale
Python
Stelle
1.2k
Fork
359
Merge medio
5g 6m
PR unite (30g)
2

Guida per i contributori

Apri la guida per i contributori

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 firebase/firebase-admin-python

Tutte le issue di firebase/firebase-admin-python

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.