This is an automated email from the ASF dual-hosted git repository. kimmking pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push: new 6f5e7c3 fixes heartbeat timeout (#6317) 6f5e7c3 is described below commit 6f5e7c357247263cbd3247fa64be83fa27151fce Author: Haoran Meng <menghaora...@gmail.com> AuthorDate: Fri Jul 10 15:58:26 2020 +0800 fixes heartbeat timeout (#6317) --- .../cluster/heartbeat/detect/HeartbeatHandler.java | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/shardingsphere-control-panel/shardingsphere-cluster/shardingsphere-cluster-heartbeat/src/main/java/org/apache/shardingsphere/cluster/heartbeat/detect/HeartbeatHandler.java b/shardingsphere-control-panel/shardingsphere-cluster/shardingsphere-cluster-heartbeat/src/main/java/org/apache/shardingsphere/cluster/heartbeat/detect/HeartbeatHandler.java index 3970a0b..3648c1c 100644 --- a/shardingsphere-control-panel/shardingsphere-cluster/shardingsphere-cluster-heartbeat/src/main/java/org/apache/shardingsphere/cluster/heartbeat/detect/HeartbeatHandler.java +++ b/shardingsphere-control-panel/shardingsphere-cluster/shardingsphere-cluster-heartbeat/src/main/java/org/apache/shardingsphere/cluster/heartbeat/detect/HeartbeatHandler.java @@ -36,9 +36,7 @@ import java.util.ArrayList; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; -import java.util.concurrent.TimeUnit; import java.util.concurrent.ExecutionException; -import java.util.concurrent.TimeoutException; import java.util.stream.Collectors; @@ -48,8 +46,6 @@ import java.util.stream.Collectors; @Slf4j public final class HeartbeatHandler { - private static final int FUTURE_GET_TIME_OUT_MILLISECONDS = 5000; - private HeartbeatConfiguration configuration; private Collection<String> disabledDataSources = Collections.emptyList(); @@ -104,9 +100,10 @@ public final class HeartbeatHandler { private HeartbeatResponse buildHeartbeatResponse(final List<Future<Map<String, HeartbeatResult>>> futureTasks) { Map<String, Collection<HeartbeatResult>> heartbeatResultMap = futureTasks.stream().map(e -> { try { - return e.get(FUTURE_GET_TIME_OUT_MILLISECONDS, TimeUnit.MILLISECONDS); - } catch (InterruptedException | ExecutionException | TimeoutException ex) { + return e.get(); + } catch (InterruptedException | ExecutionException ex) { log.error("Heartbeat report error", ex); + e.cancel(true); return new HashMap<String, HeartbeatResult>(); } }).flatMap(map -> map.entrySet().stream()).collect(Collectors.groupingBy(Map.Entry::getKey, HashMap::new, Collectors.mapping(Map.Entry::getValue, Collectors.toCollection(ArrayList::new))));