hutiefang76 opened a new pull request, #12506: URL: https://github.com/apache/seatunnel/pull/12506
## What changed When a DuckDB connection has an attached catalog (including DuckLake) and both catalogs contain the same schema/table name, JDBC table discovery previously ignored the catalog. Column introspection could mix the two tables, and generated SQL omitted the attached catalog, so a job targeting `lake.main.events` could read or write `main.events` in the local database instead. This change qualifies table and column metadata by catalog, checks attached catalog existence, and preserves the catalog in generated table identifiers and discovered table options. The existing two-part local DuckDB table path remains supported. The English and Chinese DuckDB docs now show how to attach DuckLake on each JDBC connection and address a three-part table path. ## Validation - DuckDB catalog, dialect, and Source/Sink tests pass, including same-name local/attached tables. - The Source/Sink regression was also run against a real DuckLake using DuckDB JDBC 1.3.1, SQLite metadata, and a separate data directory. It read the lake row, appended to the lake, reopened the catalog, and verified that the local same-name table was unchanged. - The connector-jdbc module unit suite passed with 1,065 tests, 0 failures/errors, and 7 skipped; module `verify` passed. The DuckLake extension-dependent test runs when `ducklake.extension` and `sqlite.scanner.extension` system properties are provided. This is catalog routing for existing JDBC paths, not a new DuckLake connector or a change to delivery guarantees. -- 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]
