From e6eef587c59794072535c41059c1559c2313af31 Mon Sep 17 00:00:00 2001 From: Haotian Zhang <928016560@qq.com> Date: Mon, 9 Dec 2024 19:25:09 +0800 Subject: [PATCH] fix:fix routing rule sync bug when using TSF Consul. (#574) --- .../consul/service/router/RoutingService.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/polaris-plugins/polaris-plugins-connector/connector-consul/src/main/java/com/tencent/polaris/plugins/connector/consul/service/router/RoutingService.java b/polaris-plugins/polaris-plugins-connector/connector-consul/src/main/java/com/tencent/polaris/plugins/connector/consul/service/router/RoutingService.java index de1e14bce..043a0502a 100644 --- a/polaris-plugins/polaris-plugins-connector/connector-consul/src/main/java/com/tencent/polaris/plugins/connector/consul/service/router/RoutingService.java +++ b/polaris-plugins/polaris-plugins-connector/connector-consul/src/main/java/com/tencent/polaris/plugins/connector/consul/service/router/RoutingService.java @@ -253,7 +253,17 @@ private List parseResponse(final HttpResponse response, Stri metadataSourceBuilders.add(metadataSourceBuilder); } } - for (RoutingProto.Source.Builder sourceBuilder : sourceBuilders) { + if (CollectionUtils.isNotEmpty(sourceBuilders)) { + for (RoutingProto.Source.Builder sourceBuilder : sourceBuilders) { + for (RoutingProto.Source.Builder metadataSourceBuilder : metadataSourceBuilders) { + sourceBuilder.putAllMetadata(metadataSourceBuilder.getMetadataMap()); + } + sources.add(sourceBuilder.build()); + } + } else { + RoutingProto.Source.Builder sourceBuilder = RoutingProto.Source.newBuilder(); + sourceBuilder.setNamespace(StringValue.of("*")); + sourceBuilder.setService(StringValue.of("*")); for (RoutingProto.Source.Builder metadataSourceBuilder : metadataSourceBuilders) { sourceBuilder.putAllMetadata(metadataSourceBuilder.getMetadataMap()); }