[firebase-auth] Blocking function timeout returns UNKNOWN error code (code 47) instead of a dedicated timeout code

Abierto
#7,862 7 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Necesita aclaración
Estado de actividad
Tranquilo
Stack tecnológico
android, java

Línea de trabajo

Comienza siguiendo cómo Android SDK gestiona el timeout de una función bloqueante durante beforeUserCreated y createUserWithEmailAndPassword, incluido el punto en el que se convierte en UNKNOWN/código de error 47. Compara las asignaciones de errores de autenticación existentes y determina el alcance de introducir un código de timeout específico. Se considera completado cuando los fallos por timeout pueden distinguirse de los errores internos genéricos para los consumidores de Android Auth.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

api: auth needs-attention

Description

When a Firebase Auth blocking function (e.g. beforeUserCreated) times out, the Android SDK throws an error with code UNKNOWN (error code 47) instead of a dedicated, meaningful error code.

This makes it impossible for developers to programmatically distinguish between a genuine internal error and a blocking function timeout, leading to hours of debugging.

Steps to Reproduce

  1. Set up a beforeUserCreated blocking function that takes longer than the allowed timeout.
  2. Call createUserWithEmailAndPassword (or any auth method guarded by the blocking function) from an Android app.
  3. Observe the exception: it surfaces as UNKNOWN / error code 47 with a generic message like "An internal error has occurred."

Expected Behavior

A dedicated error code (e.g. BLOCKING_FUNCTION_TIMEOUT or similar) should be returned so that developers can handle this case explicitly.

Actual Behavior

The error is surfaced as UNKNOWN (error code 47):

Error code: 47
Message: An internal error has occurred.

From Flutter/FlutterFire (where this was originally reported):

[firebase_auth/unknown] An internal error has occurred. [ Error code:47
FirebaseAuthException
Firebase Auth error code: unknown
Firebase Auth error message: An internal error has occurred. [ Error code:47

Context

This was reported on the FlutterFire repository: https://github.com/firebase/flutterfire/issues/18022

The FlutterFire maintainer confirmed that error codes and messages are passed through as-is from the native Android SDK, and recommended opening this issue upstream to request a dedicated error code for blocking function timeouts.

A dedicated error code would benefit all Firebase Auth consumers on Android (native and cross-platform via FlutterFire, React Native Firebase, etc.).

Platform

  • Android (Firebase Auth Android SDK)
  • Also surfaced via FlutterFire (Flutter wrapper)
Lenguaje dominante
Java
Estrellas
2.6k
Forks
733
Merge medio
2 d 15 h
PR fusionados (30 d)
72

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de firebase/firebase-android-sdk

Todos los issues de firebase/firebase-android-sdk

Issues similares

Más issues de Java

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.