Quanlong Huang created IMPALA-8790:
--------------------------------------

             Summary: IllegalStateException: Illegal reference to 
non-materialized slot
                 Key: IMPALA-8790
                 URL: https://issues.apache.org/jira/browse/IMPALA-8790
             Project: IMPALA
          Issue Type: Bug
          Components: Frontend
            Reporter: Quanlong Huang
         Attachments: foo.parq

Reproduce:
{code:sql}
$ hdfs dfs -put foo.parq hdfs:///tmp
impala> create table foo (uid string, cid string) stored as parquet;
impala> load data inpath 'hdfs:///tmp/foo.parq' into table foo;
{code}
With the stats, the following query hits an IllegalStateException:
{code:sql}
impala> compute stats foo;
impala> explain select uid, cid,
   rank() over (partition by uid order by count(*) desc)
from (select uid, cid from foo) w
group by uid, cid;

ERROR: IllegalStateException: Illegal reference to non-materialized slot: tid=1 
sid=2{code}
Without the stats, it runs successfully:
{code:sql}
impala> drop stats foo;
impala> explain select uid, cid,
   rank() over (partition by uid order by count(*) desc)
from (select uid, cid from foo) w
group by uid, cid;
+------------------------------------------------------------------------------------+
| Explain String                                                                
     |
+------------------------------------------------------------------------------------+
| Max Per-Host Resource Reservation: Memory=84.02MB Threads=5                   
     |
| Per-Host Resource Estimates: Memory=304MB                                     
     |
| WARNING: The following tables are missing relevant table and/or column 
statistics. |
| common_action.foo                                                             
     |
|                                                                               
     |
| PLAN-ROOT SINK                                                                
     |
| |                                                                             
     |
| 07:EXCHANGE [UNPARTITIONED]                                                   
     |
| |                                                                             
     |
| 03:ANALYTIC                                                                   
     |
| |  functions: rank()                                                          
     |
| |  partition by: uid                                                          
     |
| |  order by: count(*) DESC                                                    
     |
| |  window: RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW                  
     |
| |  row-size=40B cardinality=1.10K                                             
     |
| |                                                                             
     |
| 02:SORT                                                                       
     |
| |  order by: uid ASC NULLS FIRST, count(*) DESC                               
     |
| |  row-size=32B cardinality=1.10K                                             
     |
| |                                                                             
     |
| 06:EXCHANGE [HASH(uid)]                                                       
     |
| |                                                                             
     |
| 05:AGGREGATE [FINALIZE]                                                       
     |
| |  output: count:merge(*)                                                     
     |
| |  group by: uid, cid                                                         
     |
| |  row-size=32B cardinality=1.10K                                             
     |
| |                                                                             
     |
| 04:EXCHANGE [HASH(uid,cid)]                                                   
     |
| |                                                                             
     |
| 01:AGGREGATE [STREAMING]                                                      
     |
| |  output: count(*)                                                           
     |
| |  group by: uid, cid                                                         
     |
| |  row-size=32B cardinality=1.10K                                             
     |
| |                                                                             
     |
| 00:SCAN HDFS [common_action.foo]                                              
     |
|    HDFS partitions=1/1 files=1 size=5.19KB                                    
     |
|    row-size=24B cardinality=1.10K                                             
     |
+------------------------------------------------------------------------------------+
Fetched 37 row(s) in 0.03s
{code}
 



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to