From e809a515ece31fcd88383f659ac2d0e32e787696 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 | 9 +++++++++ pkg/agent/controller/endpoint_slice.go | 13 ++++++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/pkg/agent/controller/agent.go b/pkg/agent/controller/agent.go index 43e6ced8..cf37382b 100644 --- a/pkg/agent/controller/agent.go +++ b/pkg/agent/controller/agent.go @@ -29,6 +29,7 @@ import ( "github.com/submariner-io/admiral/pkg/federate" "github.com/submariner-io/admiral/pkg/ipam" "github.com/submariner-io/admiral/pkg/log" + "github.com/submariner-io/admiral/pkg/resource" "github.com/submariner-io/admiral/pkg/syncer" "github.com/submariner-io/admiral/pkg/syncer/broker" "github.com/submariner-io/lighthouse/pkg/constants" @@ -126,6 +127,14 @@ func New(spec *AgentSpecification, syncerConf broker.SyncerConfig, agentConfig A obj, found, _ := agentController.serviceImportController.remoteSyncer.GetResource( brokerAggregatedServiceImportName(serviceName, serviceNamespace), syncerConf.BrokerNamespace) if !found { + logger.Infof("******SI remoteSyncer.GetResource NOT FOUND: %s/%s", syncerConf.BrokerNamespace, + brokerAggregatedServiceImportName(serviceName, serviceNamespace)) + + for _, o := range agentController.serviceImportController.remoteSyncer.ListResources() { + resource.MustToMeta(o).SetManagedFields(nil) + logger.Infof(" ******Resource: %s", resource.ToJSON(o)) + } + 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"