Merge pull request #3006 from Garrybest/pr_patch

avoid calling apiserver when scheduling result has no changes
This commit is contained in:
karmada-bot 2023-01-05 14:48:57 +08:00 committed by GitHub
commit 7b4c541bb8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 6 additions and 0 deletions

View File

@ -511,6 +511,9 @@ func (s *Scheduler) patchScheduleResultForResourceBinding(oldBinding *workv1alph
if err != nil { if err != nil {
return fmt.Errorf("failed to create a merge patch: %v", err) return fmt.Errorf("failed to create a merge patch: %v", err)
} }
if "{}" == string(patchBytes) {
return nil
}
_, err = s.KarmadaClient.WorkV1alpha2().ResourceBindings(newBinding.Namespace).Patch(context.TODO(), newBinding.Name, types.MergePatchType, patchBytes, metav1.PatchOptions{}) _, err = s.KarmadaClient.WorkV1alpha2().ResourceBindings(newBinding.Namespace).Patch(context.TODO(), newBinding.Name, types.MergePatchType, patchBytes, metav1.PatchOptions{})
return err return err
@ -565,6 +568,9 @@ func (s *Scheduler) patchScheduleResultForClusterResourceBinding(oldBinding *wor
if err != nil { if err != nil {
return fmt.Errorf("failed to create a merge patch: %v", err) return fmt.Errorf("failed to create a merge patch: %v", err)
} }
if "{}" == string(patchBytes) {
return nil
}
_, err = s.KarmadaClient.WorkV1alpha2().ClusterResourceBindings().Patch(context.TODO(), newBinding.Name, types.MergePatchType, patchBytes, metav1.PatchOptions{}) _, err = s.KarmadaClient.WorkV1alpha2().ClusterResourceBindings().Patch(context.TODO(), newBinding.Name, types.MergePatchType, patchBytes, metav1.PatchOptions{})
return err return err