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

   ### Purpose of this pull request
   
   Fixes #12540.
   
   DuckDB `TIME` values lose fractional seconds on both JDBC Source reads and 
Sink writes. For example, `00:00:00.000001` becomes `00:00:00`: the inherited 
converter passes through `java.sql.Time`, which cannot retain the original 
fraction.
   
   Override time conversion in the DuckDB dialect: read using the existing JDBC 
4.2/text helper and bind `LocalTime` directly. Other dialects and timestamp 
handling remain unchanged. Both language guides describe microsecond precision 
and timezone-free TIME semantics.
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. Fractional TIME values retain their original microseconds instead of 
silently becoming whole seconds. No configuration option, dependency or default 
changes.
   
   ### How was this patch tested?
   
   - The new Source and Sink regressions both fail before the fix and pass 
afterward with the pinned DuckDB JDBC 1.3.1.0 driver.
   - JDK 8 and 17: 86 focused tests each, no failures/errors/skips; 
connector-jdbc `clean verify` passes.
   - Cases cover midnight, one microsecond, a typical fractional value, 
end-of-day microseconds, SQL NULL, and UTC/Asia-Shanghai/America-New-York JVM 
timezones. Sink values are supplied independently of Source so matching 
truncation cannot mask the defect.
   - A real DuckLake Source/Sink/reconnect smoke preserves `12:34:56.123456` 
with this converter patch; this is local evidence, not a claim about remote CI 
or deployment.
   
   - Official `MarkdownTest`: 4/4 passed. No existing DuckDB IT was found; 
regressions extend the existing DuckDBSourceAndSinkTest.
   
   ### Check list
   
   - [x] Updated existing tests and both language guides.
   - [x] No new dependency, connector registration or configuration required.
   


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