JingsongLi opened a new pull request, #919: URL: https://github.com/apache/paimon-rust/pull/919
### Purpose `scan.timestamp` is currently ignored by Rust readers, so a request for historical data can read the latest snapshot instead. Recognize local timestamp strings and resolve them through the existing timestamp-based snapshot and schema selection path, following Java Paimon. ### Brief change log - Parse dates and local timestamp strings with fractional seconds, truncate to milliseconds, and follow Java's time-zone transition behavior. - Accept `scan.mode=from-timestamp`, reject conflicting selectors, invalidate cached resolutions when the timestamp changes, and remove the selector when pinning a snapshot. - Recognize the selector in Python and C readers and DataFusion's session write guard. ### Tests - `cargo test -p paimon --all-targets --features fulltext,vortex`: 3433 passed, 6 ignored. Covers parsing, snapshot boundaries, historical schemas and rows, cache invalidation, conflicts, and write rejection. - `cargo test -p paimon-c --lib`: 80 passed. - `cargo test -p paimon-datafusion --test time_travel_schema_tests`: 6 passed. - `pytest bindings/python/tests/test_read.py -q` against a newly built wheel: 104 passed. - Compared 10 parsing cases with the adjacent Java checkout's `DateTimeUtils`; also ran the new Rust tests under UTC and America/New_York. - `cargo fmt --all -- --check` and `git diff --check`: passed. - Strict workspace Clippy encounters an existing `collapsible_match` warning in `crates/integrations/datafusion/src/partition_count_pushdown.rs:165` on Rust 1.95. The full workspace check passes with only that lint allowed: `cargo clippy --locked --all-targets --workspace --features fulltext,vortex -- -D warnings -A clippy::collapsible_match`. ### API and Format Adds the `scan.timestamp` option and exported `SCAN_TIMESTAMP_OPTION` constant. No storage format changes. Timestamps use the process's local time zone, matching Java Paimon. ### Documentation Adds Python and SQL examples and documents accepted formats, precision, and selector conflicts. -- 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]
