I change the sql where condition to (where t.update_time >= '2015-05-04') , 
the sql can return result for a while. Because  t.update_time >= '2015-05-04' 
can  filter many row when table scan. But why change  where condition to (where 
t.update_time >= '2015-05-04' or length(t8.end_user_id)>0) ,the sql run forever 
as follows:
Status: Running (Executing on YARN cluster with App id 
application_1419300485749_1419769) 

--------------------------------------------------------------------------------
 
VERTICES STATUS TOTAL COMPLETED RUNNING PENDING FAILED KILLED 
--------------------------------------------------------------------------------
 
Map 1 .......... SUCCEEDED 1 1 0 0 0 0 
Map 10 ......... SUCCEEDED 3 3 0 0 0 0 
Map 11 ......... SUCCEEDED 151 151 0 0 0 0 
Map 12 ......... SUCCEEDED 1 1 0 0 0 0 
Map 13 ......... SUCCEEDED 76 76 0 0 0 0 
Map 5 .......... SUCCEEDED 11 11 0 0 0 0 
Map 7 .......... SUCCEEDED 156 156 0 0 0 0 
Map 9 .......... SUCCEEDED 10 10 0 0 0 0 
Reducer 2 ...... SUCCEEDED 1 1 0 0 0 0 
Reducer 3 ..... RUNNING 642 641 1 0 0 0 
Reducer 4 RUNNING 1009 0 89 920 0 0 
Reducer 6 ...... SUCCEEDED 3 3 0 0 0 0 
Reducer 8 ...... SUCCEEDED 203 203 0 0 0 0 
--------------------------------------------------------------------------------
 
VERTICES: 11/13 [==============>>------------] 55% ELAPSED TIME: 307.54 s   

What is the root cause ?



r7raul1...@163.com

Attachment: sql.txt
Description: Binary data

Attachment: queryplan.TXT
Description: Binary data

Reply via email to