From a856d89b348f68b4369a33788e5e97f3edd9edc5 Mon Sep 17 00:00:00 2001 From: Tom Pantelis Date: Fri, 27 Sep 2024 11:37:54 -0400 Subject: [PATCH] DO NOT MERGE - debug Signed-off-by: Tom Pantelis --- pkg/agent/controller/agent.go | 3 ++- pkg/agent/controller/endpoint_slice.go | 13 ++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/pkg/agent/controller/agent.go b/pkg/agent/controller/agent.go index 43e6ced8..ab276be1 100644 --- a/pkg/agent/controller/agent.go +++ b/pkg/agent/controller/agent.go @@ -124,7 +124,8 @@ func New(spec *AgentSpecification, syncerConf broker.SyncerConfig, agentConfig A agentController.endpointSliceController, err = newEndpointSliceController(spec, syncerConf, agentController.serviceExportClient, agentController.serviceSyncer, func(serviceName string, serviceNamespace string) *mcsv1a1.ServiceImport { obj, found, _ := agentController.serviceImportController.remoteSyncer.GetResource( - brokerAggregatedServiceImportName(serviceName, serviceNamespace), syncerConf.BrokerNamespace) + brokerAggregatedServiceImportName(serviceName, serviceNamespace), + agentController.endpointSliceController.syncer.GetBrokerNamespace()) if !found { return nil } diff --git a/pkg/agent/controller/endpoint_slice.go b/pkg/agent/controller/endpoint_slice.go index 761aad9f..0f6a9e64 100644 --- a/pkg/agent/controller/endpoint_slice.go +++ b/pkg/agent/controller/endpoint_slice.go @@ -234,8 +234,11 @@ func (c *EndpointSliceController) hasNoRemainingEndpointSlices(endpointSlice *di func (c *EndpointSliceController) checkForConflicts(_, name, namespace string) (bool, error) { ctx := context.TODO() + logger.Infof("**********Checking conflicts for %s/%s", namespace, name) + localServiceExport := c.serviceExportClient.getLocalInstance(name, namespace) if localServiceExport == nil { + logger.Infof("**********localServiceExport NOT FOUND for %s/%s", namespace, name) return false, nil } @@ -256,17 +259,24 @@ func (c *EndpointSliceController) checkForConflicts(_, name, namespace string) ( for _, o := range epsList { eps := o.(*discovery.EndpointSlice) + eps.SetManagedFields(nil) + //logger.Infof("**********Checking EPS %s", resource.ToJSON(eps)) + if clusterNames.Has(eps.Labels[constants.MCSLabelSourceCluster]) { + logger.Infof("**********Skipping EPS %s/%s", namespace, name) continue } clusterNames.Insert(eps.Labels[constants.MCSLabelSourceCluster]) + //logger.Infof("**********Current prevServicePorts %s", resource.ToJSON(prevServicePorts)) + servicePorts := c.serviceExportClient.toServicePorts(eps.Ports) if prevServicePorts == nil { prevServicePorts = servicePorts intersectedServicePorts = servicePorts } else if !slices.Equivalent(prevServicePorts, servicePorts, servicePortKey) { + logger.Info("**********CONFLICT!!!!!") conflict = true } @@ -276,7 +286,8 @@ func (c *EndpointSliceController) checkForConflicts(_, name, namespace string) ( if conflict { aggregatedSI := c.aggregatedServiceImportGetter(name, namespace) if aggregatedSI == nil { - return false, nil + logger.Infof("**********aggregatedSI NOT FOUND for %s/%s", namespace, name) + return true, nil } exposedOp := "intersection"