hutiefang76 opened a new pull request, #12592:
URL: https://github.com/apache/seatunnel/pull/12592

   ### Purpose of this pull request
   
   Fixes #12589. DuckDB timestamp aliases map to TIMESTAMP and use the driver's 
plain timestamp getter to preserve the stored local date and time. The shared 
converter's default getter stays the same for other dialects.
   
   Related to #12542, which remains open: this patch does not switch the full 
query-schema mapper or address its DECIMAL/unsigned/other native-type cases.
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. `TIMESTAMP_S`, `TIMESTAMP_MS` and `TIMESTAMP_NS` table columns 
previously fell back to STRING. They now map to TIMESTAMP. DuckDB timestamp 
reads no longer shift the local time through a UTC Calendar. The EN/ZH source 
and incompatible-change docs describe the schema change, removing prior 
time-zone compensation and casting to VARCHAR when strings are still required.
   
   ### How was this patch tested?
   
   * Alias schema/value regressions failed on the original production code. A 
separate actual query read reproduced 12:34:56 becoming 20:34:56 in 
Asia/Shanghai.
   * On JDK 8 and 17, 74 focused tests passed, including actual DuckDB catalog 
and SourceFactory reads for table_path/query in UTC, Asia/Shanghai and 
America/Los_Angeles, literal fractional-second expectations and NULL.
   * Existing MySQL, PostgreSQL and Oracle row-converter tests passed. There is 
no existing DuckDB-specific engine IT in the current tree; the native 
SourceFactory tests use the real embedded driver rather than mocks.
   * Scoped Spotless, affected reactor `-DskipTests verify` and four 
MarkdownTest checks passed. No full engine E2E claim.
   
   ```sh
   ./mvnw -pl seatunnel-connectors-v2/connector-jdbc -am -DskipIT=true 
-Dtest=DuckDBSourceAndSinkTest,DuckDBTypeConverterTest,MysqlJdbcRowConverterTest,PostgresJdbcRowConverterTest,OracleJdbcRowConverterTest
 -Dsurefire.failIfNoSpecifiedTests=false verify
   ```
   
   ### Check list
   
   * [ ] New JAR license/notice changes (not applicable; no new dependencies)
   * [x] Updated user documentation
   * [ ] Connector registration/distribution/config changes (not applicable; 
existing connector)
   * [x] Updated incompatible-change documentation
   
   AI disclosure: DeepSeek and Codex assisted the implementation, tests and 
this PR description.
   


-- 
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