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

Max Gekk updated SPARK-57568:
-----------------------------
    Description: 
h2. What

Support {{TimeType}} in Parquet/ORC aggregate push-down (MIN/MAX/COUNT computed 
from
file-footer statistics).

h2. Where

{{AggregatePushDownUtils}}
(sql/core/.../execution/datasources/AggregatePushDownUtils.scala, around line 
153) builds a
columnar batch from file-footer statistics to answer pushed-down aggregates.

h2. Relationship to SPARK-54203

This area is gated at the row-to-columnar converter level by SPARK-54203
({{RowToColumnConverter.getConverterForType}} in
sql/core/src/main/scala/org/apache/spark/sql/execution/Columnar.scala), which 
currently has
no {{TimeType}} case. Once SPARK-54203 lands, the work below becomes possible. 
It may also
require TIME support in this component's own layer (Arrow type mapping, 
Parquet/ORC logical
types, or Variant encoding).

h2. Acceptance criteria

* MIN/MAX/COUNT over a TIME column can be pushed down to Parquet and ORC and 
returns correct
  results.
* Tests added in the Parquet/ORC aggregate push-down suites.

> Support TimeType in Parquet/ORC aggregate push-down
> ---------------------------------------------------
>
>                 Key: SPARK-57568
>                 URL: https://issues.apache.org/jira/browse/SPARK-57568
>             Project: Spark
>          Issue Type: Sub-task
>          Components: SQL
>    Affects Versions: 4.1.0
>            Reporter: Max Gekk
>            Priority: Major
>
> h2. What
> Support {{TimeType}} in Parquet/ORC aggregate push-down (MIN/MAX/COUNT 
> computed from
> file-footer statistics).
> h2. Where
> {{AggregatePushDownUtils}}
> (sql/core/.../execution/datasources/AggregatePushDownUtils.scala, around line 
> 153) builds a
> columnar batch from file-footer statistics to answer pushed-down aggregates.
> h2. Relationship to SPARK-54203
> This area is gated at the row-to-columnar converter level by SPARK-54203
> ({{RowToColumnConverter.getConverterForType}} in
> sql/core/src/main/scala/org/apache/spark/sql/execution/Columnar.scala), which 
> currently has
> no {{TimeType}} case. Once SPARK-54203 lands, the work below becomes 
> possible. It may also
> require TIME support in this component's own layer (Arrow type mapping, 
> Parquet/ORC logical
> types, or Variant encoding).
> h2. Acceptance criteria
> * MIN/MAX/COUNT over a TIME column can be pushed down to Parquet and ORC and 
> returns correct
>   results.
> * Tests added in the Parquet/ORC aggregate push-down suites.



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