title: Old ReplicaSet not getting replaced by new ReplicaSet after an kubectl edit
body: <p>I am creating a deployment using <a href="https://pastebin.com/nCLTigF7" rel="nofollow noreferrer">this yaml</a> file. It creates a replica of 4 busybox pods. All fine till here.</p>
  <p>But when I edit this deployment using the command <code>kubectl edit deployment my-dep2</code>, only changing the version of busybox image to 1.31 (a downgrade but still an update from K8s point of view), the ReplicaSet is not completely replaced.</p>
  <p>The output of <code>kubectl get all --selector app=my-dep2</code> post the edit is:</p>
  <pre><code>NAME                          READY   STATUS             RESTARTS   AGE
  pod/my-dep2-55f67b974-5k7t9   0/1     ErrImagePull       2          5m26s
  pod/my-dep2-55f67b974-wjwfv   0/1     CrashLoopBackOff   2          5m26s
  pod/my-dep2-dcf7978b7-22khz   0/1     CrashLoopBackOff   6          12m
  pod/my-dep2-dcf7978b7-2q5lw   0/1     CrashLoopBackOff   6          12m
  pod/my-dep2-dcf7978b7-8mmvb   0/1     CrashLoopBackOff   6          12m
  
  NAME                      READY   UP-TO-DATE   AVAILABLE   AGE
  deployment.apps/my-dep2   0/4     2            0           12m
  
  NAME                                DESIRED   CURRENT   READY   AGE
  replicaset.apps/my-dep2-55f67b974   2         2         0       5m27s
  replicaset.apps/my-dep2-dcf7978b7   3         3         0       12m
  </code></pre>
  <p>As you can see from the output above, there are 2 ReplicaSet which are existing in parallel. I expect the old ReplicaSet to be completely replaced by new ReplicaSet (containing the 1.31 version of busybox). But this is not happening. What am I missing here?</p>