Skip to content
This repository was archived by the owner on Oct 28, 2024. It is now read-only.

Commit 5ac3254

Browse files
authored
Merge pull request #138 from zhuangqh/ep-sync
syncer: remedy for missmatched endpoints
2 parents 395ab3e + 9cbec89 commit 5ac3254

File tree

1 file changed

+10
-3
lines changed
  • virtualcluster/pkg/syncer/resources/endpoints

1 file changed

+10
-3
lines changed

virtualcluster/pkg/syncer/resources/endpoints/checker.go

+10-3
Original file line numberDiff line numberDiff line change
@@ -88,17 +88,24 @@ func (c *controller) PatrollerDo() {
8888

8989
d := differ.HandlerFuncs{}
9090
d.AddFunc = func(vObj differ.ClusterObject) {
91-
// pEp not found and vEp still exists, report the inconsistent ep controller behavior
92-
klog.Errorf("Cannot find pEp for vEp %s in cluster %s", vObj.Key, vObj.OwnerCluster)
9391
atomic.AddUint64(&numMissingEndPoints, 1)
92+
if err := c.MultiClusterController.RequeueObject(vObj.OwnerCluster, vObj); err != nil {
93+
klog.Errorf("error requeue vEndpoints %s: %v", vObj.Key, err)
94+
} else {
95+
metrics.CheckerRemedyStats.WithLabelValues("RequeuedTenantEndpoints").Inc()
96+
}
9497
}
9598
d.UpdateFunc = func(vObj, pObj differ.ClusterObject) {
9699
v := vObj.Object.(*v1.Endpoints)
97100
p := pObj.Object.(*v1.Endpoints)
98101
updated := conversion.Equality(c.Config, nil).CheckEndpointsEquality(p, v)
99102
if updated != nil {
100103
atomic.AddUint64(&numMissMatchedEndPoints, 1)
101-
klog.Warningf("Endpoint %s diff in super&tenant master", pObj.Key)
104+
if err := c.MultiClusterController.RequeueObject(vObj.OwnerCluster, vObj); err != nil {
105+
klog.Errorf("error requeue vEndpoints %s: %v", vObj.Key, err)
106+
} else {
107+
metrics.CheckerRemedyStats.WithLabelValues("RequeuedTenantEndpoints").Inc()
108+
}
102109
}
103110
}
104111

0 commit comments

Comments
 (0)