From 1a459cbe52e8e2490b86eedf371de824741572ed Mon Sep 17 00:00:00 2001 From: Haotian Zhang <928016560@qq.com> Date: Mon, 9 Dec 2024 17:47:14 +0800 Subject: [PATCH] fix:fix routing rule sync bug when using TSF Consul. --- .../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()); }