From 11f8f02de694bb52acd28302a01e3a381f9b7419 Mon Sep 17 00:00:00 2001 From: Flyfoxs Date: Fri, 9 Oct 2020 11:12:54 +0800 Subject: [PATCH 1/7] Timeout exception in feign first time calling MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 第一次Feign调用时, 由于初始化懒加载, 可能会有timeout异常. 之前会被mock异常掩盖了. --- .../business-service/src/main/resources/application.properties | 2 ++ 1 file changed, 2 insertions(+) diff --git a/spring-cloud-alibaba-examples/seata-example/business-service/src/main/resources/application.properties b/spring-cloud-alibaba-examples/seata-example/business-service/src/main/resources/application.properties index e1fc1c851..bc40bece3 100644 --- a/spring-cloud-alibaba-examples/seata-example/business-service/src/main/resources/application.properties +++ b/spring-cloud-alibaba-examples/seata-example/business-service/src/main/resources/application.properties @@ -5,6 +5,8 @@ spring.cloud.nacos.discovery.server-addr=localhost:8848 #feign.hystrix.enabled=true #feign.sentinel.enabled=true +feign.client.config.default.connectTimeout=10000 +feign.client.config.default.readTimeout=10000 logging.level.io.seata=debug From 25689b800e275be9754fb273e853927f4f96bb34 Mon Sep 17 00:00:00 2001 From: Roger3581321 Date: Fri, 9 Oct 2020 14:54:30 +0800 Subject: [PATCH 2/7] Add one missing configuration item Since there is an important, yet missing option spring.cloud.nacos.discovery.enabled, I have added its description by following the "More configuration items" format. --- .../nacos-example/nacos-discovery-example/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/readme.md b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/readme.md index 656829be4..0946cf9a7 100644 --- a/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/readme.md +++ b/spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/readme.md @@ -207,6 +207,7 @@ Metadata|spring.cloud.nacos.discovery.metadata||Extended data, Configure using M log name|spring.cloud.nacos.discovery.log-name|| endpoint|spring.cloud.nacos.discovery.endpoint||The domain name of a service, through which the server address can be dynamically obtained. Integration Ribbon|ribbon.nacos.enabled|true| +enabled|spring.cloud.nacos.discovery.enabled|true|The switch to enable or disable nacos service discovery From 1934c4760d0ed240f356881af1f6944ffbf7ea8e Mon Sep 17 00:00:00 2001 From: zhongguangxi <32933432@qq.com> Date: Sun, 11 Oct 2020 23:31:37 +0800 Subject: [PATCH 3/7] maven project name change --- .../seata-example/order-service/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/spring-cloud-alibaba-examples/seata-example/order-service/pom.xml b/spring-cloud-alibaba-examples/seata-example/order-service/pom.xml index a856310de..8555554fe 100644 --- a/spring-cloud-alibaba-examples/seata-example/order-service/pom.xml +++ b/spring-cloud-alibaba-examples/seata-example/order-service/pom.xml @@ -10,7 +10,7 @@ 4.0.0 order-service - Spring Cloud Starter Alibaba Seata Example - Business Service + Spring Cloud Starter Alibaba Seata Example - Order Service jar @@ -53,4 +53,4 @@ - \ No newline at end of file + From 6540555920bad2f72cf7dadf46699f7de08b14aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=B7=E5=86=B7?= Date: Thu, 15 Oct 2020 13:33:48 +0800 Subject: [PATCH 4/7] fix EndpointId logWarning --- .../com/alibaba/cloud/nacos/endpoint/NacosConfigEndpoint.java | 2 +- .../alibaba/cloud/nacos/endpoint/NacosDiscoveryEndpoint.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosConfigEndpoint.java b/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosConfigEndpoint.java index d5b516601..d00dfe637 100644 --- a/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosConfigEndpoint.java +++ b/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosConfigEndpoint.java @@ -36,7 +36,7 @@ import org.springframework.boot.actuate.endpoint.annotation.ReadOperation; * * @author xiaojing */ -@Endpoint(id = "nacos-config") +@Endpoint(id = "nacosconfig") public class NacosConfigEndpoint { private final NacosConfigProperties properties; diff --git a/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosDiscoveryEndpoint.java b/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosDiscoveryEndpoint.java index 9f88830eb..b1aea4179 100644 --- a/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosDiscoveryEndpoint.java +++ b/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosDiscoveryEndpoint.java @@ -36,7 +36,7 @@ import org.springframework.boot.actuate.endpoint.annotation.ReadOperation; * * @author xiaojing */ -@Endpoint(id = "nacos-discovery") +@Endpoint(id = "nacosdiscovery") public class NacosDiscoveryEndpoint { private static final Logger log = LoggerFactory From fa49d5f03c1f5649b58d94a1445eaced650e5180 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E8=89=AF?= <841369634@qq.com> Date: Tue, 3 Nov 2020 11:42:27 +0800 Subject: [PATCH 5/7] bugfix: fix compatibility issues with 'seata-all-1.4.0' --- .../feign/hystrix/SeataHystrixConcurrencyStrategy.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-seata/src/main/java/com/alibaba/cloud/seata/feign/hystrix/SeataHystrixConcurrencyStrategy.java b/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-seata/src/main/java/com/alibaba/cloud/seata/feign/hystrix/SeataHystrixConcurrencyStrategy.java index 2aa507bdd..d0a1528bb 100644 --- a/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-seata/src/main/java/com/alibaba/cloud/seata/feign/hystrix/SeataHystrixConcurrencyStrategy.java +++ b/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-seata/src/main/java/com/alibaba/cloud/seata/feign/hystrix/SeataHystrixConcurrencyStrategy.java @@ -36,6 +36,7 @@ import io.seata.core.context.RootContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.util.StringUtils; import org.springframework.web.context.request.RequestAttributes; import org.springframework.web.context.request.RequestContextHolder; @@ -156,11 +157,15 @@ public class SeataHystrixConcurrencyStrategy extends HystrixConcurrencyStrategy public K call() throws Exception { try { RequestContextHolder.setRequestAttributes(requestAttributes); - RootContext.bind(xid); + if (!StringUtils.isEmpty(xid)) { + RootContext.bind(xid); + } return actual.call(); } finally { - RootContext.unbind(); + if (!StringUtils.isEmpty(xid)) { + RootContext.unbind(); + } RequestContextHolder.resetRequestAttributes(); } } From 8f008191ad47cbe06e0ba2739036adcc45fc38dd Mon Sep 17 00:00:00 2001 From: yuhuangbin Date: Thu, 19 Nov 2020 17:12:40 +0800 Subject: [PATCH 6/7] Optimize the way to get NacosWatch ThreadPoolTaskScheduler --- .../NacosDiscoveryClientConfiguration.java | 4 ++-- .../alibaba/cloud/nacos/discovery/NacosWatch.java | 13 ++++++------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryClientConfiguration.java b/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryClientConfiguration.java index b1021eef7..d2f2f8ba6 100644 --- a/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryClientConfiguration.java +++ b/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryClientConfiguration.java @@ -32,7 +32,7 @@ import org.springframework.cloud.client.discovery.DiscoveryClient; import org.springframework.cloud.client.discovery.simple.SimpleDiscoveryClientAutoConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.scheduling.TaskScheduler; +import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler; /** * @author xiaojing @@ -59,7 +59,7 @@ public class NacosDiscoveryClientConfiguration { matchIfMissing = true) public NacosWatch nacosWatch(NacosServiceManager nacosServiceManager, NacosDiscoveryProperties nacosDiscoveryProperties, - ObjectProvider taskExecutorObjectProvider) { + ObjectProvider taskExecutorObjectProvider) { return new NacosWatch(nacosServiceManager, nacosDiscoveryProperties, taskExecutorObjectProvider); } diff --git a/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosWatch.java b/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosWatch.java index 4a78238f9..bcb590351 100644 --- a/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosWatch.java +++ b/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosWatch.java @@ -27,7 +27,6 @@ import java.util.concurrent.atomic.AtomicLong; import com.alibaba.cloud.nacos.NacosDiscoveryProperties; import com.alibaba.cloud.nacos.NacosServiceManager; -import com.alibaba.nacos.api.exception.NacosException; import com.alibaba.nacos.api.naming.NamingService; import com.alibaba.nacos.api.naming.listener.Event; import com.alibaba.nacos.api.naming.listener.EventListener; @@ -41,7 +40,6 @@ import org.springframework.cloud.client.discovery.event.HeartbeatEvent; import org.springframework.context.ApplicationEventPublisher; import org.springframework.context.ApplicationEventPublisherAware; import org.springframework.context.SmartLifecycle; -import org.springframework.scheduling.TaskScheduler; import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler; /** @@ -66,14 +64,15 @@ public class NacosWatch implements ApplicationEventPublisherAware, SmartLifecycl private final NacosDiscoveryProperties properties; - private final TaskScheduler taskScheduler; + private final ThreadPoolTaskScheduler taskScheduler; public NacosWatch(NacosServiceManager nacosServiceManager, NacosDiscoveryProperties properties, - ObjectProvider taskScheduler) { + ObjectProvider taskScheduler) { this.nacosServiceManager = nacosServiceManager; this.properties = properties; - this.taskScheduler = taskScheduler.getIfAvailable(NacosWatch::getTaskScheduler); + this.taskScheduler = taskScheduler.stream().findAny() + .orElseGet(NacosWatch::getTaskScheduler); } private static ThreadPoolTaskScheduler getTaskScheduler() { @@ -156,7 +155,7 @@ public class NacosWatch implements ApplicationEventPublisherAware, SmartLifecycl if (this.watchFuture != null) { // shutdown current user-thread, // then the other daemon-threads will terminate automatic. - ((ThreadPoolTaskScheduler) this.taskScheduler).shutdown(); + this.taskScheduler.shutdown(); this.watchFuture.cancel(true); } @@ -167,7 +166,7 @@ public class NacosWatch implements ApplicationEventPublisherAware, SmartLifecycl namingService.unsubscribe(properties.getService(), properties.getGroup(), Arrays.asList(properties.getClusterName()), eventListener); } - catch (NacosException e) { + catch (Exception e) { log.error("namingService unsubscribe failed, properties:{}", properties, e); } From 43a79105e00fea0fbb195d93fb5987210125f792 Mon Sep 17 00:00:00 2001 From: "theonefx.chenx" Date: Wed, 25 Nov 2020 16:32:42 +0800 Subject: [PATCH 7/7] update 2 SNAPSHOT version --- pom.xml | 2 +- spring-cloud-alibaba-dependencies/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 9a6d9682f..5af61288e 100644 --- a/pom.xml +++ b/pom.xml @@ -80,7 +80,7 @@ - 2.2.3-SNAPSHOT + 2.2.4-SNAPSHOT 2.2.5.RELEASE diff --git a/spring-cloud-alibaba-dependencies/pom.xml b/spring-cloud-alibaba-dependencies/pom.xml index f6c66b955..7dc87d31c 100644 --- a/spring-cloud-alibaba-dependencies/pom.xml +++ b/spring-cloud-alibaba-dependencies/pom.xml @@ -18,7 +18,7 @@ Spring Cloud Alibaba Dependencies - 2.2.3.RELEASE + 2.2.4-SNAPSHOT 1.8.0 1.3.0 1.3.3