HonorMemory opened a new issue, #9083:
URL: https://github.com/apache/seatunnel/issues/9083

   ### Search before asking
   
   - [x] I had searched in the 
[issues](https://github.com/apache/seatunnel/issues?q=is%3Aissue+label%3A%22bug%22)
 and found no similar issues.
   
   
   ### What happened
   
   seatunnel2.3.9 的mysqlCDC 
Source在配置了table-pattern选项时,任务运行中如果创建了新表且表名满足table-pattern中的正则表达式,那么在新表有数据变化时,seatunnel任务会报错
   
   ### SeaTunnel Version
   
   2.3.9
   
   ### SeaTunnel Config
   
   ```conf
   env {
     job.name = "mysqlCDC_console_test"
     job.mode = "STREAMING"  
     checkpoint.interval = 10000
     checkpoint.timeout = 600000
     parallelism = 1
   }
   
   source {
     MySQL-CDC {
       server-id = 5401-5420
       base-url = "${mysql_url}"
       username = "${mysql_user}"
       password = "${mysql_passwd}"
       startup.mode = "latest"
       table-pattern = "${database_name}.${tab_name}_.*"
       stop.mode = "never"  
       debezium={
         snapshot.mode = "schema_only"
         include.schema.changes = "false"
       }
       result_table_name = "source_cdc"
     }
   }
   transform {
     TableMerge {
       source_table_name = "source_cdc"
       result_table_name = "source_merge"
       
       table_match_regex = "${database_name}.${tab_name}_.*"
       database = "${database_name}"
       table = "${tab_name}_all"
     }
   }
   
   sink {
     Doris {
       schema_save_mode = "ERROR_WHEN_SCHEMA_NOT_EXIST"
       source_table_name = "source_merge"
       fenodes = "${doris_ali_addr}:8030"
       query-port = "9030"
       username = "${doris_cdc_user}"
       password = "${doris_cdc_passwd}"
       default-database = "${doris_ali_crm_database}?useSSL=false"
       database = "${doris_ali_database}"
       table = "${target_tab_name}"
       strict_mode = "false"
       sink.label-prefix = "test-cdc"
       sink.enable-delete = "true" 
       doris.config {
         max_filter_ratio = 0.0,
         format = "json",
         read_json_by_line = "true"
       }
     }
   
     Doris {
       schema_save_mode = "ERROR_WHEN_SCHEMA_NOT_EXIST"
       source_table_name = "source_merge"
       fenodes = "${doris_ali_addr}:8030"
       query-port = "9030"
       username = "${doris_cdc_user}"
       password = "${doris_cdc_passwd}"
       default-database = "${doris_ali_crm_database}?useSSL=false"
       database = "${doris_ali_crm_database}"
       table = "${target_tab_name2}"
       strict_mode = "false"
       sink.label-prefix = "test-cdc"
       sink.enable-delete = "true" 
       doris.config {
         max_filter_ratio = 0.0,
         format = "json",
         read_json_by_line = "true"
       }
     }
   }
   ```
   
   ### Running Command
   
   ```shell
   ${SEATUNNEL_HOME}/bin/seatunnel.sh --config seatunnel_33971.conf 
--deploy-mode local
   ```
   
   ### Error Exception
   
   ```log
   Caused by: java.lang.RuntimeException: Can't obtain schema for table 
order_test.order_test_mall_analysis_20250406
                at 
org.apache.seatunnel.connectors.seatunnel.cdc.mysql.utils.MySqlSchema.readTableSchema(MySqlSchema.java:102)
                at 
org.apache.seatunnel.connectors.seatunnel.cdc.mysql.utils.MySqlSchema.getTableSchema(MySqlSchema.java:76)
                at 
org.apache.seatunnel.connectors.seatunnel.cdc.mysql.source.MySqlDialect.queryTableSchema(MySqlDialect.java:110)
                at 
org.apache.seatunnel.connectors.seatunnel.cdc.mysql.source.reader.fetch.MySqlSourceFetchTaskContext.registerDatabaseHistory(MySqlSourceFetchTaskContext.java:354)
                at 
org.apache.seatunnel.connectors.seatunnel.cdc.mysql.source.reader.fetch.MySqlSourceFetchTaskContext.configure(MySqlSourceFetchTaskContext.java:119)
                at 
org.apache.seatunnel.connectors.cdc.base.source.reader.external.IncrementalSourceStreamFetcher.submitTask(IncrementalSourceStreamFetcher.java:98)
                at 
org.apache.seatunnel.connectors.cdc.base.source.reader.IncrementalSourceSplitReader.checkSplitOrStartNext(IncrementalSourceSplitReader.java:147)
                at 
org.apache.seatunnel.connectors.cdc.base.source.reader.IncrementalSourceSplitReader.fetch(IncrementalSourceSplitReader.java:71)
                at 
org.apache.seatunnel.connectors.seatunnel.common.source.reader.fetcher.FetchTask.run(FetchTask.java:54)
                at 
org.apache.seatunnel.connectors.seatunnel.common.source.reader.fetcher.SplitFetcher.runOnce(SplitFetcher.java:162)
                ... 6 more
   ```
   
   ### Zeta or Flink or Spark Version
   
   _No response_
   
   ### Java or Scala Version
   
   _No response_
   
   ### Screenshots
   
   _No response_
   
   ### Are you willing to submit PR?
   
   - [ ] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [x] I agree to follow this project's [Code of 
Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@seatunnel.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to