From 7f3c3c17cd8eda16776452eae6bb54bad77876a1 Mon Sep 17 00:00:00 2001 From: morningman Date: Wed, 9 Oct 2024 17:42:10 +0800 Subject: [PATCH] [fix](heartbeat) fill default value for required field in TFrontendPingFrontendResult --- .../java/org/apache/doris/service/FrontendServiceImpl.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java b/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java index 8d5ad4450433287..f592a20f84df3c6 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java +++ b/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java @@ -2232,7 +2232,14 @@ public TStatus snapshotLoaderReport(TSnapshotLoaderReportRequest request) throws public TFrontendPingFrontendResult ping(TFrontendPingFrontendRequest request) throws TException { boolean isReady = Env.getCurrentEnv().isReady(); TFrontendPingFrontendResult result = new TFrontendPingFrontendResult(); + // The following fields are required in thrift. + // So must give them a default value to avoid "Required field xx was not present" error. result.setStatus(TFrontendPingFrontendStatusCode.OK); + result.setMsg(""); + result.setQueryPort(0); + result.setRpcPort(0); + result.setReplayedJournalId(0); + result.setVersion(Version.DORIS_BUILD_VERSION + "-" + Version.DORIS_BUILD_SHORT_HASH); if (isReady) { if (request.getClusterId() != Env.getCurrentEnv().getClusterId()) { result.setStatus(TFrontendPingFrontendStatusCode.FAILED);