@@ -18,8 +18,6 @@ package controller
1818
1919import (
2020 "context"
21- "crypto/md5"
22- "encoding/hex"
2321 "encoding/json"
2422 "fmt"
2523 "reflect"
@@ -688,9 +686,13 @@ func (r *Consist) cleanEmployerCleanFinalizer(ctx context.Context, employer clie
688686
689687 alreadyDeleted := true
690688 var finalizers []string
691- cleanFlz := generateCleanFlz (employer )
689+ oldCleanFlz := generateOldCleanFlz (employer )
692690 for _ , flz := range employer .GetFinalizers () {
693- if flz == cleanFlz {
691+ if flz == oldCleanFlz {
692+ alreadyDeleted = false
693+ continue
694+ }
695+ if flz == cleanFinalizer {
694696 alreadyDeleted = false
695697 continue
696698 }
@@ -898,22 +900,23 @@ func (r *Consist) ensureEmployerCleanFlz(ctx context.Context, employer client.Ob
898900 if ! employer .GetDeletionTimestamp ().IsZero () {
899901 return false , nil
900902 }
903+ var finalizers []string
901904 for _ , flz := range employer .GetFinalizers () {
902- if flz == generateCleanFlz ( employer ) {
905+ if flz == cleanFinalizer {
903906 return false , nil
904907 }
908+ if flz == generateOldCleanFlz (employer ) {
909+ continue
910+ }
911+ finalizers = append (finalizers , flz )
905912 }
906- employer .SetFinalizers (append (employer . GetFinalizers (), generateCleanFlz ( employer ) ))
913+ employer .SetFinalizers (append (finalizers , cleanFinalizer ))
907914 if _ , ok := r .adapter .(MultiClusterOptions ); ok {
908915 return true , r .Client .Update (clusterinfo .WithCluster (ctx , clusterinfo .Fed ), employer )
909916 }
910917 return true , r .Client .Update (ctx , employer )
911918}
912919
913- func generateCleanFlz (employer client.Object ) string {
914- if len (employer .GetName ()) > 57 {
915- b := md5 .Sum ([]byte (employer .GetName ()))
916- return cleanFinalizerPrefix + hex .EncodeToString (b [:])[8 :24 ]
917- }
920+ func generateOldCleanFlz (employer client.Object ) string {
918921 return cleanFinalizerPrefix + employer .GetName ()
919922}
0 commit comments