canonical / canonical/layer-basic
Multiple calls to unitdata.kv().flush()
- Lingua principale
- Python
- Stelle
- 10
- Fork
- 42
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
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
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Inizia da charms.layer.basic.clear_config_states() e segui la relativa chiamata a unitdata.kv().flush(), quindi leggi la proposta referenziata di charms.reactive sulla cleanup-phase. Il lavoro è completato quando il ciclo di vita del flush dello stato dell’hook non lascia più uno stato non valido se si verifica un errore tra due flush; il payload non indica alcun test o file da eseguire.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- devops
- Tipo di issue
- Refactoring
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 30/100