| ==== |
| ---- QUERY |
| # Tests the correctness of the ORC count(*) optimization. |
| select count(1) |
| from functional_orc_def.uncomp_src_alltypes |
| ---- RESULTS |
| 7300 |
| ---- TYPES |
| bigint |
| ---- RUNTIME_PROFILE |
| aggregation(SUM, NumOrcStripes): 0 |
| aggregation(SUM, NumFileMetadataRead): 24 |
| aggregation(SUM, RowsRead): 7300 |
| ===== |
| ---- QUERY |
| # Tests the correctness of zero slot scan over ORC. |
| # Does not verify 'NumFileMetadataRead' here since codegen vs non-codegen yield |
| # different number. |
| select 1 from functional_orc_def.alltypestiny |
| ---- RESULTS |
| 1 |
| 1 |
| 1 |
| 1 |
| 1 |
| 1 |
| 1 |
| 1 |
| ---- TYPES |
| tinyint |
| ---- RUNTIME_PROFILE |
| aggregation(SUM, NumOrcStripes): 0 |
| aggregation(SUM, RowsRead): 8 |
| ===== |
| ---- QUERY |
| # ORC count(*) optimization with predicates on the partition columns. |
| select count(1) |
| from functional_orc_def.uncomp_src_alltypes where year < 2010 and month > 8 |
| ---- RESULTS |
| 1220 |
| ---- TYPES |
| bigint |
| ---- RUNTIME_PROFILE |
| aggregation(SUM, NumOrcStripes): 0 |
| aggregation(SUM, NumFileMetadataRead): 4 |
| aggregation(SUM, RowsRead): 1220 |
| ===== |
| ---- QUERY |
| # ORC count(*) optimization with group by partition columns. |
| select year, month, count(1) |
| from functional_orc_def.uncomp_src_alltypes group by year, month |
| ---- RESULTS |
| 2009,1,310 |
| 2009,2,280 |
| 2009,3,310 |
| 2009,4,300 |
| 2009,5,310 |
| 2009,6,300 |
| 2009,7,310 |
| 2009,8,310 |
| 2009,9,300 |
| 2009,10,310 |
| 2009,11,300 |
| 2009,12,310 |
| 2010,1,310 |
| 2010,2,280 |
| 2010,3,310 |
| 2010,4,300 |
| 2010,5,310 |
| 2010,6,300 |
| 2010,7,310 |
| 2010,8,310 |
| 2010,9,300 |
| 2010,10,310 |
| 2010,11,300 |
| 2010,12,310 |
| ---- TYPES |
| int, int, bigint |
| ---- RUNTIME_PROFILE |
| aggregation(SUM, NumOrcStripes): 0 |
| aggregation(SUM, NumFileMetadataRead): 24 |
| aggregation(SUM, RowsRead): 7300 |
| ===== |
| ---- QUERY |
| # ORC count(*) optimization with both group by and predicates on partition columns. |
| select count(1) |
| from functional_orc_def.uncomp_src_alltypes where year < 2010 and month > 8 |
| group by month |
| ---- RESULTS |
| 310 |
| 300 |
| 310 |
| 300 |
| ---- TYPES |
| bigint |
| ---- RUNTIME_PROFILE |
| aggregation(SUM, NumOrcStripes): 0 |
| aggregation(SUM, NumFileMetadataRead): 4 |
| aggregation(SUM, RowsRead): 1220 |
| ===== |
| ---- QUERY |
| # ORC count(*) optimization with the result going into a join. |
| select x.bigint_col from functional_orc_def.uncomp_src_alltypes x |
| inner join ( |
| select count(1) as a from functional_orc_def.uncomp_src_alltypes group by year |
| ) t on x.id = t.a; |
| ---- RESULTS |
| 0 |
| 0 |
| ---- TYPES |
| bigint |
| ---- RUNTIME_PROFILE |
| aggregation(SUM, NumOrcStripes): 24 |
| aggregation(SUM, NumFileMetadataRead): 24 |
| aggregation(SUM, RowsRead): 14600 |
| ===== |
| ---- QUERY |
| # ORC count(*) optimization with the agg function in the having clause. |
| select 1 from functional_orc_def.uncomp_src_alltypes having count(*) > 1 |
| ---- RESULTS |
| 1 |
| ---- TYPES |
| tinyint |
| ---- RUNTIME_PROFILE |
| aggregation(SUM, NumOrcStripes): 0 |
| aggregation(SUM, NumFileMetadataRead): 24 |
| aggregation(SUM, RowsRead): 7300 |
| ==== |
| ---- QUERY |
| # Verify that 0 is returned for count(*) on an empty table. |
| select count(1) from functional_orc_def.emptytable |
| ---- RESULTS |
| 0 |
| ---- TYPES |
| bigint |
| ---- RUNTIME_PROFILE |
| aggregation(SUM, NumOrcStripes): 0 |
| aggregation(SUM, NumFileMetadataRead): 0 |
| aggregation(SUM, RowsRead): 0 |
| ===== |
| ---- QUERY |
| # Verify that 0 is returned when all partitions are pruned. |
| select count(1) from functional_orc_def.uncomp_src_alltypes where year = -1 |
| ---- RESULTS |
| 0 |
| ---- TYPES |
| bigint |
| ---- RUNTIME_PROFILE |
| aggregation(SUM, NumOrcStripes): 0 |
| aggregation(SUM, NumFileMetadataRead): 0 |
| aggregation(SUM, RowsRead): 0 |
| ===== |
| ---- QUERY |
| # Verify count star over full acid table. |
| # NumFileMetadataRead is varied depending on DISABLE_CODEGEN option. |
| select count(*) from functional_orc_def.complextypestbl |
| ---- RESULTS |
| 8 |
| ---- TYPES |
| bigint |
| ---- RUNTIME_PROFILE |
| aggregation(SUM, NumOrcStripes): 0 |
| aggregation(SUM, RowsRead): 8 |
| ===== |