ClickHouse / ClickHouse/ClickHouse
PREWHERE support for DeltaLake and Iceberg tables
- Dominant language
- C++
- Stars
- 49.9k
- Forks
- 9k
- Avg merge
- 21h 32m
- Merged PRs (30d)
- 515
Description
### Company or project name
ClickHouse employee 😄
### Use case
The PREWHERE is not supported in DeltaLake and Iceberg tables, while the table function versions and the new Parquet reader do so.
```sql
CREATE TABLE t0 (c0 Int) ENGINE = IcebergLocal(local, path = '/var/lib/clickhouse/user_files/lakehouses/t0', format = 'Parquet');
SELECT c0 FROM t0 PREWHERE ... SETTINGS input_format_parquet_use_native_reader_v3 = 1;
--DB::Exception: Storage IcebergLocal (table default.t0 (62cef28a-4260-40e0-aa57-f87ea0ccadef)) does not support PREWHERE. (ILLEGAL_PREWHERE)
```
### Describe the solution you'd like
The PREWHERE clause should be supported for DeltaLake and Iceberg tables.
### Describe alternatives you've considered
Using the table functions.
### Additional context
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.