KronosClock returns stale cached time after device reboot if syncInBackground is called before getCurrentTime
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- kotlin
- Área
- networking
Línea de trabajo
Empieza en SntpService siguiendo syncInBackground, getCurrentTime, state e isCachedFromPreviousBoot durante el manejo de reinicios. Revisa PR #51 y el issue #61 para conocer el comportamiento relacionado de state; se considera terminado cuando no se devuelve la hora almacenada en caché que está obsoleta durante la sincronización y la caché no se borra incorrectamente después de cambios manuales de hora.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
PR https://github.com/lyft/Kronos-Android/pull/51 attempted to fix an issue where the local cache was not cleared after a device reboot, but it overlooked another edge case.
If the user calls syncInBackground before getCurrentTime, the SntpService.state variable will be set to State.SYNCING. As a result, the isCachedFromPreviousBoot check always evaluates to false while the sync is in progress. This creates a short window (a few seconds) during which getCurrentTime may return an incorrectly computed time based on a stale local cache.
Additionally, PR https://github.com/lyft/Kronos-Android/pull/51 removes State.INIT, which introduces another issue described in https://github.com/lyft/Kronos-Android/issues/61, where the local cache is cleared every time the user manually changes the system time.
- Lenguaje dominante
- Kotlin
- Estrellas
- 287
- Forks
- 17
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de lyft/Kronos-Android
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
lyft/Kronos-Android#66 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
lyft/Kronos-Android#65 ·
-
Wrong TimeAbierto
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
lyft/Kronos-Android#62 ·
-
getCurrentTimeMs() return the wrong date time everytime I manually change the device clockPosiblemente ocupada @Rajin9601 la tomó hace 1705 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
lyft/Kronos-Android#61 · 10 comentarios · 2 reacciones ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
lyft/Kronos-Android#53 ·
Todos los issues de lyft/Kronos-Android
Issues similares
-
[BUG] Navigation drawer drops library-name suffixes without ellipsis (1.0.8, NVIDIA Shield)Posiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
damontecres/Wholphin#2069 ·
Los mantenedores suelen responder en 1 día
-
Android (vision-camera-location): HybridLocationManager never quits its HandlerThread on disposeAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
margelo/react-native-vision-camera#4217 ·
Los mantenedores suelen responder en 4 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
saisaharsh3/Leftovers#13 · 1 comentario ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 67/100
navikt/esyfo-narmesteleder#700 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
nightscout/AndroidAPS#5280 ·
Los mantenedores suelen responder en 1 día