You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@inlong.apache.org by do...@apache.org on 2023/01/12 08:13:17 UTC
[inlong] branch master updated: [INLONG-7222][Manager] Decode the MySQL JDBC URL thoroughly (#7223)
This is an automated email from the ASF dual-hosted git repository.
dockerzhang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/inlong.git
The following commit(s) were added to refs/heads/master by this push:
new 835f0d889 [INLONG-7222][Manager] Decode the MySQL JDBC URL thoroughly (#7223)
835f0d889 is described below
commit 835f0d889fa14b14e900c95ac6846dc3b7a3c8d4
Author: fuweng11 <76...@users.noreply.github.com>
AuthorDate: Thu Jan 12 16:13:12 2023 +0800
[INLONG-7222][Manager] Decode the MySQL JDBC URL thoroughly (#7223)
---
.../org/apache/inlong/manager/common/consts/InlongConstants.java | 2 ++
.../org/apache/inlong/manager/pojo/sink/mysql/MySQLSinkDTO.java | 6 +++++-
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/consts/InlongConstants.java b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/consts/InlongConstants.java
index 8a49627bb..deff91d6b 100644
--- a/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/consts/InlongConstants.java
+++ b/inlong-manager/manager-common/src/main/java/org/apache/inlong/manager/common/consts/InlongConstants.java
@@ -43,6 +43,8 @@ public class InlongConstants {
public static final String LEFT_BRACKET = "(";
+ public static final String PERCENT = "%";
+
public static final String ADMIN_USER = "admin";
public static final Integer AFFECTED_ONE_ROW = 1;
diff --git a/inlong-manager/manager-pojo/src/main/java/org/apache/inlong/manager/pojo/sink/mysql/MySQLSinkDTO.java b/inlong-manager/manager-pojo/src/main/java/org/apache/inlong/manager/pojo/sink/mysql/MySQLSinkDTO.java
index 443e8f9c6..7cc95f14f 100644
--- a/inlong-manager/manager-pojo/src/main/java/org/apache/inlong/manager/pojo/sink/mysql/MySQLSinkDTO.java
+++ b/inlong-manager/manager-pojo/src/main/java/org/apache/inlong/manager/pojo/sink/mysql/MySQLSinkDTO.java
@@ -25,6 +25,7 @@ import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.StringUtils;
+import org.apache.inlong.manager.common.consts.InlongConstants;
import org.apache.inlong.manager.common.enums.ErrorCodeEnum;
import org.apache.inlong.manager.common.exceptions.BusinessException;
import org.apache.inlong.manager.common.util.JsonUtils;
@@ -189,7 +190,10 @@ public class MySQLSinkDTO {
return url;
}
try {
- String resultUrl = URLDecoder.decode(url, "UTF-8");
+ String resultUrl = url;
+ while (resultUrl.contains(InlongConstants.PERCENT)) {
+ resultUrl = URLDecoder.decode(resultUrl, "UTF-8");
+ }
for (String sensitiveParam : SENSITIVE_PARAM_MAP.keySet()) {
if (StringUtils.containsIgnoreCase(resultUrl, sensitiveParam)) {
resultUrl = StringUtils.replaceIgnoreCase(resultUrl, sensitiveParam,