If a unit is rebooted while executing a hook Juju will mark it as
errored when it comes back. To work around this in tests, units in
an error state are resolved on reboot. However, this could mask a
genuine error. So, to minimise the risk only resolve units that
went into an error state when running update-status as the system
was in a stable state prior to reboot so that should have been the
only hook running.
Charm going into an error state on reboot applies equally to
subordinates so use the same logic for hacluster.
block_until_all_units_idle can return when a subordinate hook is
still queued so check for update-status errors when manually
queuing update-status run via action.