You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@inlong.apache.org by he...@apache.org on 2022/03/19 05:51:15 UTC

[incubator-inlong] branch master updated: [INLONG-3175][Manager] Need to check md5 for SortService (#3195)

This is an automated email from the ASF dual-hosted git repository.

healchow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-inlong.git


The following commit(s) were added to refs/heads/master by this push:
     new 30bc0d1  [INLONG-3175][Manager] Need to check md5 for SortService (#3195)
30bc0d1 is described below

commit 30bc0d1f0516cb4372cbab9e171ef2eed2393b83
Author: vernedeng <de...@pku.edu.cn>
AuthorDate: Sat Mar 19 13:51:08 2022 +0800

    [INLONG-3175][Manager] Need to check md5 for SortService (#3195)
---
 .../inlong/manager/service/core/impl/SortServiceImpl.java   | 13 +++++++++++++
 .../standalone/config/holder/CommonPropertiesHolder.java    |  8 ++++----
 .../sort/standalone/source/sortsdk/SortSdkSource.java       |  2 +-
 3 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/core/impl/SortServiceImpl.java b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/core/impl/SortServiceImpl.java
index ce4c607..101dc65 100644
--- a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/core/impl/SortServiceImpl.java
+++ b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/core/impl/SortServiceImpl.java
@@ -101,10 +101,23 @@ public class SortServiceImpl implements SortService {
                 .sortTasks(taskConfigs)
                 .build();
 
+        JSONObject job = new JSONObject(clusterConfig);
+        String localMd5 = DigestUtils.md5Hex(job.toString());
+
+        // no update
+        if (localMd5.equals(md5)) {
+            return SortClusterResponse.builder()
+                    .code(RESPONSE_CODE_NO_UPDATE)
+                    .msg("No update")
+                    .md5(localMd5)
+                    .build();
+        }
+
         return SortClusterResponse.builder()
                 .code(RESPONSE_CODE_SUCCESS)
                 .data(clusterConfig)
                 .msg("success")
+                .md5(localMd5)
                 .build();
     }
 
diff --git a/inlong-sort-standalone/sort-standalone-common/src/main/java/org/apache/inlong/sort/standalone/config/holder/CommonPropertiesHolder.java b/inlong-sort-standalone/sort-standalone-common/src/main/java/org/apache/inlong/sort/standalone/config/holder/CommonPropertiesHolder.java
index 487ca6e..422b1cd 100644
--- a/inlong-sort-standalone/sort-standalone-common/src/main/java/org/apache/inlong/sort/standalone/config/holder/CommonPropertiesHolder.java
+++ b/inlong-sort-standalone/sort-standalone-common/src/main/java/org/apache/inlong/sort/standalone/config/holder/CommonPropertiesHolder.java
@@ -35,10 +35,10 @@ import org.slf4j.Logger;
 public class CommonPropertiesHolder {
 
     public static final Logger LOG = InlongLoggerFactory.getLogger(CommonPropertiesHolder.class);
-    public static final String KEY_COMMON_PROPERTIES = "common-properties-loader";
+    public static final String KEY_COMMON_PROPERTIES = "common_properties_loader";
     public static final String DEFAULT_LOADER = ClassResourceCommonPropertiesLoader.class.getName();
     public static final String KEY_CLUSTER_ID = "clusterId";
-    public static final String KEY_MANAGER_URL = "sortClusterConfig.managerUrl";
+    public static final String KEY_SOURCE_CONFIG_MANAGER_URL = "sortSourceConfig.managerUrl";
 
     private static Map<String, String> props;
     private static Context context;
@@ -202,8 +202,8 @@ public class CommonPropertiesHolder {
      *
      * @return Manager URL
      */
-    public static String getManagerUrl() {
-        return getString(KEY_MANAGER_URL);
+    public static String getSourceConfigManagerUrl() {
+        return getString(KEY_SOURCE_CONFIG_MANAGER_URL);
     }
 
     /**
diff --git a/inlong-sort-standalone/sort-standalone-source/src/main/java/org/apache/inlong/sort/standalone/source/sortsdk/SortSdkSource.java b/inlong-sort-standalone/sort-standalone-source/src/main/java/org/apache/inlong/sort/standalone/source/sortsdk/SortSdkSource.java
index 4d67718..9f8d867 100644
--- a/inlong-sort-standalone/sort-standalone-source/src/main/java/org/apache/inlong/sort/standalone/source/sortsdk/SortSdkSource.java
+++ b/inlong-sort-standalone/sort-standalone-source/src/main/java/org/apache/inlong/sort/standalone/source/sortsdk/SortSdkSource.java
@@ -175,7 +175,7 @@ public final class SortSdkSource extends AbstractSource implements Configurable,
                             SortSdkSource.defaultStrategy, InetAddress.getLocalHost().getHostAddress());
             final FetchCallback callback = FetchCallback.Factory.create(sortId, getChannelProcessor(), context);
             clientConfig.setCallback(callback);
-            clientConfig.setManagerApiUrl(CommonPropertiesHolder.getManagerUrl());
+            clientConfig.setManagerApiUrl(CommonPropertiesHolder.getSourceConfigManagerUrl());
             SortClient client = SortClientFactory.createSortClient(clientConfig);
             client.init();
             // temporary use to ACK fetched msg.