...
Code Block | ||
---|---|---|
| ||
@PublicEvolving public interface CatalogTable extends CatalogBaseTable { /** Return the snapshot specified for the table. Return Optional.empty() if not specified. */ default Optional<Long> getSnapshot() { return Optional.empty(); } } |
Supported Time Type
As shown in the above syntax, when querying with time travel, we support specifying a constant expression of time. Therefore, the type corresponding to this expression may be TIMESTAMP or TIMESTAMP_LTZ.
But the interface reserved for the Connector layer is a long value timestamp, which means that we need to convert both TIMESTAMP and TIMESTAMP_LTZ expressions into long values in the end.
By default, it is natural to convert data of type TIMESTAMP_LTZ to long. However, if it is a TIMESTAMP type, we will implicitly convert it to TIMESTAMP_LTZ and then convert it to a Long value.
Proposed Changes
Flink SQL related Changes
...