[ 
https://issues.apache.org/jira/browse/SPARK-56965?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated SPARK-56965:
-----------------------------------
    Labels: pull-request-available  (was: )

> Add SQL parser support for nanosecond-capable TIMESTAMP_NTZ(p) and 
> TIMESTAMP_LTZ(p) (p in 7-9)
> ----------------------------------------------------------------------------------------------
>
>                 Key: SPARK-56965
>                 URL: https://issues.apache.org/jira/browse/SPARK-56965
>             Project: Spark
>          Issue Type: Sub-task
>          Components: SQL
>    Affects Versions: 4.2.0
>            Reporter: Max Gekk
>            Priority: Major
>              Labels: pull-request-available
>
> h3. Summary
> Extend the SQL data type parser so fractional-second precision p in [7, 9] is 
> supported in DDL and CAST(... AS ...) type strings, aligned with SPARK-56822 
> (SPIP scope: nanosecond-capable band only). Parser-only: maps SQL text to 
> TimestampNTZNanosType(p) / TimestampLTZNanosType(p). No UnsafeRow, casts, 
> Parquet, expressions, or SQLConf in this issue.
> Follow the TIME(p) pattern in DataTypeAstBuilder / DataTypeParserSuite, 
> limited to p = 7, 8, 9.
> h3. Scope
> * DataTypeAstBuilder (and grammar if needed) for:
> ** TIMESTAMP_NTZ(p), TIMESTAMP_LTZ(p) with p in {7, 8, 9}
> ** Aliases: TIMESTAMP(p) WITHOUT TIME ZONE, TIMESTAMP(p) WITH LOCAL TIME ZONE 
> (same p range)
> * Map to TimestampNTZNanosType(p) / TimestampLTZNanosType(p) (SPARK-56876)
> * Reject p < 7 or p > 9 with UNSUPPORTED_TIMESTAMP_NTZ_PRECISION / 
> UNSUPPORTED_TIMESTAMP_LTZ_PRECISION
> * DataTypeParserSuite tests
> h3. Out of scope
> * p in [0, 6] (microsecond types stay unparameterized timestamp / 
> timestamp_ntz / timestamp_ltz)
> * SQLConf / preview flags
> * UnsafeRow / PhysicalDataType / TypeOps
> * Cast, coercion, expressions, Parquet, Connect, PySpark
> * End-to-end query execution
> h3. Acceptance criteria
> * parseDataType("TIMESTAMP_NTZ(9)") -> TimestampNTZNanosType(9) (and 7, 8)
> * parseDataType("TIMESTAMP_LTZ(9)") -> TimestampLTZNanosType(9)
> * parseDataType("TIMESTAMP(8) WITHOUT TIME ZONE") -> TimestampNTZNanosType(8)
> * parseDataType("TIMESTAMP(7) WITH LOCAL TIME ZONE") -> 
> TimestampLTZNanosType(7)
> * parseDataType("TIMESTAMP_NTZ(6)") / "(10)" -> 
> UNSUPPORTED_TIMESTAMP_*_PRECISION
> * Unparameterized timestamp, timestamp_ntz, timestamp_ltz unchanged
> * DataTypeParserSuite covers aliases for p in [7, 9]
> h3. References
> * Parent: SPARK-56822
> * API types: SPARK-56876 / https://github.com/apache/spark/pull/55952



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to