Rahul Challapalli created DRILL-3731:
----------------------------------------
Summary: Partition Pruning not taking place when we have case
statement within the filter
Key: DRILL-3731
URL: https://issues.apache.org/jira/browse/DRILL-3731
Project: Apache Drill
Issue Type: Bug
Components: Query Planning & Optimization
Affects Versions: 1.2.0
Reporter: Rahul Challapalli
Assignee: Jinfeng Ni
Fix For: 1.2.0
Commit # 8f33c3d55228a98ea2a309490ecbfb7a180f012c
Partition Pruning is not taking place in the below query
{code}
explain plan for select count(*) from
`/drill/testdata/partition_pruning/dfs/lineitempart` where case when dir0=1991
then null else 1 end is null or dir0=1992;
00-00 Screen
00-01 Project(EXPR$0=[$0])
00-02 StreamAgg(group=[{}], EXPR$0=[COUNT()])
00-03 Project($f0=[0])
00-04 SelectionVectorRemover
00-05 Filter(condition=[OR(IS NULL(CASE(=($0, 1991), null, 1)),
=($0, 1992))])
00-06 Scan(groupscan=[EasyGroupScan
[selectionRoot=maprfs:/drill/testdata/partition_pruning/dfs/lineitempart,
numFiles=7, columns=[`dir0`],
files=[maprfs:/drill/testdata/partition_pruning/dfs/lineitempart/1991/lineitemaa.tbl,
maprfs:/drill/testdata/partition_pruning/dfs/lineitempart/1992/lineitemab.tbl,
maprfs:/drill/testdata/partition_pruning/dfs/lineitempart/1996/lineitemaf.tbl,
maprfs:/drill/testdata/partition_pruning/dfs/lineitempart/1994/lineitemad.tbl,
maprfs:/drill/testdata/partition_pruning/dfs/lineitempart/1993/lineitemac.tbl,
maprfs:/drill/testdata/partition_pruning/dfs/lineitempart/1997/lineitemag.tbl,
maprfs:/drill/testdata/partition_pruning/dfs/lineitempart/1995/lineitemae.tbl]]])
{code}
The planner should have pruned all partitions except 1991 & 1992
I attached the dataset. Let me know if you need anything.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)