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

   ### 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
   
   The issue is reproducible with a pure SeaTunnel config, without any external 
migration framework.
   A single-table Oracle-CDC job works.
   A two-table Oracle-CDC job works.
   Three tables split into three independent Oracle-CDC sources work.
   Three tables in one Oracle-CDC source fail consistently.
   Using CDB root service as the JDBC URL, with debezium.database.pdb.name, 
fails earlier during catalog table discovery.
   
   ### SeaTunnel Version
   
   Apache SeaTunnel: 3.0.0-SNAPSHOT
   Java: OpenJDK 17
   Source database: Oracle 19c CDB/PDB
   CDB service: ORCL
   PDB service: ORCLPDB
   Source schemas:
   LIB_A
   LIB_B
   Tables:
   ORCLPDB.LIB_A.T_A1
   ORCLPDB.LIB_A.T_A2
   ORCLPDB.LIB_B.T_B1
   Target sink: JDBC sink to GaussDB/OpenGauss-compatible database
   
   ### SeaTunnel Config
   
   ```conf
   env {
     parallelism = 2
     job.mode = "STREAMING"
   }
   
   source {
     Oracle-CDC {
       plugin_output = "oracle_cdc_source"
       url = "jdbc:oracle:thin:@//<host>:1521/ORCLPDB"
       username = "<masked>"
       password = "<masked>"
   
       database-names = ["ORCLPDB"]
       schema-names = ["LIB_A", "LIB_B"]
       table-names = [
         "ORCLPDB.LIB_A.T_A1",
         "ORCLPDB.LIB_A.T_A2",
         "ORCLPDB.LIB_B.T_B1"
       ]
   
       snapshot.split.size = 2147483647
       use_select_count = true
       skip_analyze = true
       incremental.parallelism = 1
   
       debezium {
         database.url = "jdbc:oracle:thin:@//<host>:1521/ORCLPDB"
         database.dbname = "ORCLPDB"
         database.pdb.name = "ORCLPDB"
       }
   
       startup.mode = "initial"
     }
   }
   
   transform {
     TableRename {
       plugin_input = "oracle_cdc_source"
       plugin_output = "oracle_cdc_tables"
       convert_case = "LOWER"
     }
   
     FieldRename {
       plugin_input = "oracle_cdc_tables"
       plugin_output = "oracle_cdc_fields"
       convert_case = "LOWER"
     }
   }
   
   sink {
     Jdbc {
       plugin_input = "oracle_cdc_fields"
       url = "jdbc:gaussdb://<host>:8000/postgres"
       driver = "com.huawei.gaussdb.jdbc.Driver"
       compatible_mode = "OpenGauss"
       dialect = "OpenGauss"
       database = "postgres"
       table = "public.${table_name}"
       username = "<masked>"
       password = "<masked>"
       batch_size = 1000
       field_ide = "LOWERCASE"
       generate_sink_sql = true
       enable_upsert = true
       primary_keys = ["id"]
     }
   }
   ```
   
   ### Running Command
   
   ```shell
   bash bin/seatunnel.sh --config 19c_full_incr.config -m local
   ```
   
   ### Error Exception
   
   ```log
   Caused by: org.apache.seatunnel.common.utils.SeaTunnelException: Can't 
obtain schema for table ORCLPDB.LIB_B.T_B1
       at 
org.apache.seatunnel.connectors.seatunnel.cdc.oracle.utils.OracleSchema.readTableSchema(OracleSchema.java:94)
       at 
org.apache.seatunnel.connectors.seatunnel.cdc.oracle.utils.OracleSchema.getTableSchema(OracleSchema.java:59)
       at 
org.apache.seatunnel.connectors.seatunnel.cdc.oracle.source.OracleDialect.queryTableSchema(OracleDialect.java:107)
       at 
org.apache.seatunnel.connectors.cdc.base.source.reader.external.JdbcSourceFetchTaskContext.registerDatabaseHistory(JdbcSourceFetchTaskContext.java:174)
       at 
org.apache.seatunnel.connectors.seatunnel.cdc.oracle.source.reader.fetch.OracleSourceFetchTaskContext.configure(OracleSourceFetchTaskContext.java:99)
       at 
org.apache.seatunnel.connectors.cdc.base.source.reader.external.IncrementalSourceScanFetcher.submitTask(IncrementalSourceScanFetcher.java:85)
   ```
   
   ### 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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to