[
https://issues.apache.org/jira/browse/DRILL-7244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16967118#comment-16967118
]
Boaz Ben-Zvi commented on DRILL-7244:
-------------------------------------
I just retried the original example (see DRILL-7240) with recent code (Oct 20~)
and a debugger, and a breakpoint was indeed hit inside the "catch
(ClassCastException cce)" clause (line 204 -
AbstractParquetScanBatchCreator.java), and the log does note this event
correctly:
{noformat}
2019-11-04 16:23:15,378 [223f3f7f-bcd5-8632-94e9-842495cdfd7d:frag:0:0] INFO
o.a.d.e.s.p.AbstractParquetScanBatchCreator - Finished parquet_runtime_pruning
in 45444993 usec. Out of given 2 rowgroups, 0 were pruned.
2019-11-04 16:23:15,379 [223f3f7f-bcd5-8632-94e9-842495cdfd7d:frag:0:0] INFO
o.a.d.e.s.p.AbstractParquetScanBatchCreator - Run-time pruning skipped for 1
out of 2 rowgroups due to: java.lang.Integer cannot be cast to
java.lang.Long{noformat}
There are some newer code changes there (from DRILL-4517 and DRILL-7314) but
they did not seem to matter for this issue.
> Run-time rowgroup pruning match() fails on casting a Long to an Integer
> -----------------------------------------------------------------------
>
> Key: DRILL-7244
> URL: https://issues.apache.org/jira/browse/DRILL-7244
> Project: Apache Drill
> Issue Type: Sub-task
> Components: Storage - Parquet
> Affects Versions: 1.17.0
> Reporter: Boaz Ben-Zvi
> Assignee: Vova Vysotskyi
> Priority: Major
> Fix For: 1.17.0
>
>
> See DRILL-7240 , where a temporary workaround was created, skipping pruning
> (and logging) instead of this failure:
> After a Parquet table is refreshed with selected "interesting" columns, a
> query whose WHERE clause contains a condition on a "non interesting" INT64
> column fails during run-time pruning (calling match()) with:
> {noformat}
> org.apache.drill.common.exceptions.UserException: SYSTEM ERROR:
> ClassCastException: java.lang.Long cannot be cast to java.lang.Integer
> {noformat}
> A long term solution is to pass the whole (or the relevant part of the)
> schema to the runtime, instead of just passing the "interesting" columns.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)