Skip to content

Commit 2b48058

Browse files
authored
won't defer single unit restart (#438)
1 parent 794fbb5 commit 2b48058

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

src/charm.py

+7-1
Original file line numberDiff line numberDiff line change
@@ -406,7 +406,13 @@ def _reconcile_pebble_layer(self, container: Container) -> None:
406406

407407
def _restart(self, event: EventBase) -> None:
408408
"""Restart the service."""
409-
if self._mysql.is_unit_primary(self.unit_label):
409+
if self.peers.units != self.restart_peers.units:
410+
# defer restart until all units are in the relation
411+
logger.debug("Deferring restart until all units are in the relation")
412+
event.defer()
413+
return
414+
if self.peers.units and self._mysql.is_unit_primary(self.unit_label):
415+
# delay primary on multi units
410416
restart_states = {
411417
self.restart_peers.data[unit].get("state", "unset") for unit in self.peers.units
412418
}

0 commit comments

Comments
 (0)