diff --git a/CHANGELOG.md b/CHANGELOG.md index 4f15f19eb..8298b28f9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ - Add Plan BackOff functionality - Fix Core InitContainers check - Remove unused `status.members..sidecars-specs` variable +- Keep only recent terminations ## [1.2.6](https://github.com/arangodb/kube-arangodb/tree/1.2.6) (2021-12-15) - Add ArangoBackup backoff functionality diff --git a/pkg/deployment/member/phase_updates.go b/pkg/deployment/member/phase_updates.go index e0d32bd01..52f9770c6 100644 --- a/pkg/deployment/member/phase_updates.go +++ b/pkg/deployment/member/phase_updates.go @@ -23,10 +23,16 @@ package member import ( + "time" + api "github.com/arangodb/kube-arangodb/pkg/apis/deployment/v1" "k8s.io/apimachinery/pkg/util/uuid" ) +const ( + recentTerminationsKeepPeriod = time.Minute * 30 +) + type phaseMapFunc func(action api.Action, m *api.MemberStatus) type phaseMapTo map[api.MemberPhase]phaseMapFunc type phaseMap map[api.MemberPhase]phaseMapTo @@ -77,6 +83,8 @@ func removeMemberConditionsMapFunc(m *api.MemberStatus) { m.Conditions.Remove(api.ConditionTypeCleanedOut) m.Conditions.Remove(api.ConditionTypeTopologyAware) + m.RemoveTerminationsBefore(time.Now().Add(-1 * recentTerminationsKeepPeriod)) + m.Upgrade = false }