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

diwu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris-flink-connector.git


The following commit(s) were added to refs/heads/master by this push:
     new 0ecf4f3  [improve] oracle cdc regex improve (#326)
0ecf4f3 is described below

commit 0ecf4f352d598b90b762a8f4d2867b58c9e13940
Author: wudi <676366...@qq.com>
AuthorDate: Mon Mar 4 17:15:08 2024 +0800

    [improve] oracle cdc regex improve (#326)
---
 .../main/java/org/apache/doris/flink/tools/cdc/DatabaseSync.java    | 5 +----
 .../org/apache/doris/flink/tools/cdc/oracle/OracleDatabaseSync.java | 6 ++----
 .../java/org/apache/doris/flink/tools/cdc/DatabaseSyncTest.java     | 2 +-
 3 files changed, 4 insertions(+), 9 deletions(-)

diff --git 
a/flink-doris-connector/src/main/java/org/apache/doris/flink/tools/cdc/DatabaseSync.java
 
b/flink-doris-connector/src/main/java/org/apache/doris/flink/tools/cdc/DatabaseSync.java
index 8627a47..cd5ef1a 100644
--- 
a/flink-doris-connector/src/main/java/org/apache/doris/flink/tools/cdc/DatabaseSync.java
+++ 
b/flink-doris-connector/src/main/java/org/apache/doris/flink/tools/cdc/DatabaseSync.java
@@ -53,7 +53,6 @@ import java.util.Map;
 import java.util.Properties;
 import java.util.Set;
 import java.util.regex.Pattern;
-import java.util.stream.Collectors;
 
 public abstract class DatabaseSync {
     private static final Logger LOG = 
LoggerFactory.getLogger(DatabaseSync.class);
@@ -327,9 +326,7 @@ public abstract class DatabaseSync {
 
     protected String getSyncTableList(List<String> syncTables) {
         if (!singleSink) {
-            return syncTables.stream()
-                    .map(v -> getTableListPrefix() + "\\." + v)
-                    .collect(Collectors.joining("|"));
+            return String.format("(%s)\\.(%s)", getTableListPrefix(), 
String.join("|", syncTables));
         } else {
             // includingTablePattern and ^excludingPattern
             if (includingTables == null) {
diff --git 
a/flink-doris-connector/src/main/java/org/apache/doris/flink/tools/cdc/oracle/OracleDatabaseSync.java
 
b/flink-doris-connector/src/main/java/org/apache/doris/flink/tools/cdc/oracle/OracleDatabaseSync.java
index 8ca66e4..f3a8c8b 100644
--- 
a/flink-doris-connector/src/main/java/org/apache/doris/flink/tools/cdc/oracle/OracleDatabaseSync.java
+++ 
b/flink-doris-connector/src/main/java/org/apache/doris/flink/tools/cdc/oracle/OracleDatabaseSync.java
@@ -154,10 +154,8 @@ public class OracleDatabaseSync extends DatabaseSync {
         // When debezium incrementally reads, it will be judged based on 
regexp_like.
         // When the regular length exceeds 512, an error will be reported,
         // like ORA-12733: regular expression too long
-        if (tableName.length() > 384) {
-            // max database name length 128
-            tableName =
-                    StringUtils.isNullOrWhitespaceOnly(includingTables) ? ".*" 
: includingTables;
+        if (tableName.length() > 512) {
+            tableName = StringUtils.isNullOrWhitespaceOnly(includingTables) ? 
".*" : tableName;
         }
 
         String url = config.get(OracleSourceOptions.URL);
diff --git 
a/flink-doris-connector/src/test/java/org/apache/doris/flink/tools/cdc/DatabaseSyncTest.java
 
b/flink-doris-connector/src/test/java/org/apache/doris/flink/tools/cdc/DatabaseSyncTest.java
index 23dbff0..1e69c59 100644
--- 
a/flink-doris-connector/src/test/java/org/apache/doris/flink/tools/cdc/DatabaseSyncTest.java
+++ 
b/flink-doris-connector/src/test/java/org/apache/doris/flink/tools/cdc/DatabaseSyncTest.java
@@ -62,7 +62,7 @@ public class DatabaseSyncTest {
         config.setString("table-name", "tbl.*");
         databaseSync.setConfig(config);
         String syncTableList = 
databaseSync.getSyncTableList(Arrays.asList("tbl_1", "tbl_2"));
-        assertEquals("db\\.tbl_1|db\\.tbl_2", syncTableList);
+        assertEquals("(db)\\.(tbl_1|tbl_2)", syncTableList);
     }
 
     @Test


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to