canonical / canonical/layer-basic

Multiple calls to unitdata.kv().flush()

Abierto
#68 0 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Python
Estrellas
10
Forks
42
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

charms.layer.basic.clear_config_states() calls unitdata.kv().flush(), which will be the second time the storage is flushed in the hook. In the perverse case where a failure happens between these two calls, we can end up with invalid state.

I think this is a use case for an actual `@cleanup` phase in charms.reactive, per https://github.com/juju-solutions/charms.reactive/pull/20

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Comienza con charms.layer.basic.clear_config_states() y sigue su llamada a unitdata.kv().flush(); después, lee la propuesta referenciada de charms.reactive sobre la cleanup-phase. Se considera terminado cuando el ciclo de vida del vaciado de estado del hook ya no deja un estado no válido si ocurre un fallo entre vaciados; el payload no indica ningún test ni archivo que ejecutar.

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

Evaluación

Stack tecnológico
python
Área
devops
Tipo de issue
Refactorización
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
30/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.