Zhiyong Liu created DRILL-820:
---------------------------------

             Summary: CannotPlanException with a class of queries
                 Key: DRILL-820
                 URL: https://issues.apache.org/jira/browse/DRILL-820
             Project: Apache Drill
          Issue Type: Bug
          Components: Functions - Drill
            Reporter: Zhiyong Liu


Datasources: TPCH (10MB), three-way split parquet files
git.commit.id.abbrev=2fad21d
git.commit.id=2fad21d5a6ec43bb68fb989e48b6da180f23f73a


0: jdbc:drill:schema=dfs.TpcHMulti> alter session set 
`planner.enable_streamagg` = false;
+------------+------------+                                                     
         
|     ok     |  summary   |                                                     
         
+------------+------------+                                                     
         
| true       | planner.enable_streamagg updated. |                              
         
+------------+------------+                                                     
         
1 row selected (0.021 seconds)                                                  
         
0: jdbc:drill:schema=dfs.TpcHMulti> select sum(l_extendedprice * l_discount) as 
revenue  
. . . . . . . . . . . . . . . . . >    from lineitem                            
         
. . . . . . . . . . . . . . . . . >         where l_shipdate between date 
'1997-01-01' and date '1998-01-01'                                              
                                                        
. . . . . . . . . . . . . . . . . >                 and l_quantity < 24;        
                         
Error: exception while executing query (state=,code=0)                          
                         
Query failed: org.apache.drill.exec.rpc.RpcException: Remote failure while 
running query.[error_id: "5dfa0c1e-d938-42a1-b365-f32c3fd6d24f"                 
                                                       
endpoint {                                                                      
                         
  address: "perfnode104.perf.lab"                                               
                         
  user_port: 31010                                                              
                         
  control_port: 31011                                                           
                         
  data_port: 31012                                                              
                         
}                                                                               
                         
error_type: 0                                                                   
                         
message: "Failure while parsing sql. < CannotPlanException:[ Node 
[rel#34102:Subset#12.PHYSICAL.SINGLETON([]).[]] could not be implemented; 
planner state:                                                        

Root: rel#34102:Subset#12.PHYSICAL.SINGLETON([]).[]
Original rel:                                      
AbstractConverter(subset=[rel#34102:Subset#12.PHYSICAL.SINGLETON([]).[]], 
convention=[PHYSICAL], DrillDistributionTraitDef=[SINGLETON([])], sort=[[]]): 
rowcount = 752.1875, cumulative cost = {inf}, id = 34104  
  DrillScreenRel(subset=[rel#34101:Subset#12.LOGICAL.ANY([]).[]]): rowcount = 
752.1875, cumulative cost = {75.21875 rows, 75.21875 cpu, 0.0 io, 0.0 network}, 
id = 34100                                          
    DrillAggregateRel(subset=[rel#34099:Subset#11.LOGICAL.ANY([]).[]], 
group=[{}], revenue=[SUM($0)]): rowcount = 752.1875, cumulative cost = 
{752.1875 rows, 0.0 cpu, 0.0 io, 0.0 network}, id = 34098           
      DrillProjectRel(subset=[rel#34097:Subset#10.LOGICAL.ANY([]).[]], 
$f0=[*($3, $4)]): rowcount = 7521.875, cumulative cost = {7521.875 rows, 4.0 
cpu, 0.0 io, 0.0 network}, id = 34096                         
        DrillFilterRel(subset=[rel#34095:Subset#9.LOGICAL.ANY([]).[]], 
condition=[AND(>=($2, 1997-01-01), <=($2, 1998-01-01), <($1, 24))]): rowcount = 
7521.875, cumulative cost = {60175.0 rows, 722100.0 cpu, 0.0 io, 0.0 network}, 
id = 34094                                                                      
     
          DrillScanRel(subset=[rel#34093:Subset#8.LOGICAL.ANY([]).[]], 
table=[[dfs, TpcHMulti, lineitem]]): rowcount = 60175.0, cumulative cost = 
{60175.0 rows, 300875.0 cpu, 0.0 io, 0.0 network}, id = 34047   

Sets:
Set#8, type: (DrillRecordRow[*, l_quantity, l_shipdate, l_extendedprice, 
l_discount])
        rel#34093:Subset#8.LOGICAL.ANY([]).[], best=rel#34047, 
importance=0.5904900000000001
                rel#34047:DrillScanRel.LOGICAL.ANY([]).[](table=[dfs, 
TpcHMulti, lineitem]), rowcount=60175.0, cumulative cost={60175.0 rows, 
300875.0 cpu, 0.0 io, 0.0 network}                                  
                
rel#34114:AbstractConverter.LOGICAL.ANY([]).[](child=rel#34113:Subset#8.PHYSICAL.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=60175.0, cumulative cost={inf}
                
rel#34118:AbstractConverter.LOGICAL.ANY([]).[](child=rel#34117:Subset#8.PHYSICAL.RANDOM_DISTRIBUTED([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=60175.0, cumulative cost={inf}                                        
                                                  
        rel#34113:Subset#8.PHYSICAL.ANY([]).[], best=rel#34116, 
importance=0.531441                      
                
rel#34115:AbstractConverter.PHYSICAL.ANY([]).[](child=rel#34093:Subset#8.LOGICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=60175.0, cumulative cost={inf}                                        
                                                                
                
rel#34119:AbstractConverter.PHYSICAL.ANY([]).[](child=rel#34117:Subset#8.PHYSICAL.RANDOM_DISTRIBUTED([]).[],convention=PHYSICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=60175.0, cumulative cost={inf}                                        
                                                
                
rel#34120:AbstractConverter.PHYSICAL.RANDOM_DISTRIBUTED([]).[](child=rel#34093:Subset#8.LOGICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=RANDOM_DISTRIBUTED([]),sort=[]),
 rowcount=60175.0, cumulative cost={inf}                                        
                                  
                
rel#34121:AbstractConverter.PHYSICAL.RANDOM_DISTRIBUTED([]).[](child=rel#34113:Subset#8.PHYSICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=RANDOM_DISTRIBUTED([]),sort=[]),
 rowcount=60175.0, cumulative cost={inf}                                        
                                 
                
rel#34116:ScanPrel.PHYSICAL.RANDOM_DISTRIBUTED([]).[](groupscan=ParquetGroupScan
 [entries=[ReadEntryWithPath 
[path=maprfs:/drill/testdata/tpch-multi/lineitem]], 
selectionRoot=/drill/testdata/tpch-multi/lineitem, columns=[SchemaPath 
[`l_quantity`], SchemaPath [`l_shipdate`], SchemaPath [`l_extendedprice`], 
SchemaPath [`l_discount`]]]), rowcount=60175.0, cumulative cost={60175.0 rows, 
300875.0 cpu, 0.0 io, 0.0 network}                                              
                                           
        rel#34117:Subset#8.PHYSICAL.RANDOM_DISTRIBUTED([]).[], best=rel#34116, 
importance=0.4782969000000001                                                   
                                                   
                
rel#34120:AbstractConverter.PHYSICAL.RANDOM_DISTRIBUTED([]).[](child=rel#34093:Subset#8.LOGICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=RANDOM_DISTRIBUTED([]),sort=[]),
 rowcount=60175.0, cumulative cost={inf}                                        
                                  
                
rel#34121:AbstractConverter.PHYSICAL.RANDOM_DISTRIBUTED([]).[](child=rel#34113:Subset#8.PHYSICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=RANDOM_DISTRIBUTED([]),sort=[]),
 rowcount=60175.0, cumulative cost={inf}                                        
                                 
                
rel#34116:ScanPrel.PHYSICAL.RANDOM_DISTRIBUTED([]).[](groupscan=ParquetGroupScan
 [entries=[ReadEntryWithPath 
[path=maprfs:/drill/testdata/tpch-multi/lineitem]], 
selectionRoot=/drill/testdata/tpch-multi/lineitem, columns=[SchemaPath 
[`l_quantity`], SchemaPath [`l_shipdate`], SchemaPath [`l_extendedprice`], 
SchemaPath [`l_discount`]]]), rowcount=60175.0, cumulative cost={60175.0 rows, 
300875.0 cpu, 0.0 io, 0.0 network}                                              
                                           
Set#9, type: (DrillRecordRow[*, l_quantity, l_shipdate, l_extendedprice, 
l_discount])                    
        rel#34095:Subset#9.LOGICAL.ANY([]).[], best=rel#34094, 
importance=0.6561                         
                
rel#34094:DrillFilterRel.LOGICAL.ANY([]).[](child=rel#34093:Subset#8.LOGICAL.ANY([]).[],condition=AND(>=($2,
 1997-01-01), <=($2, 1998-01-01), <($1, 24))), rowcount=7521.875, cumulative 
cost={120350.0 rows, 1022975.0 cpu, 0.0 io, 0.0 network}                        
                                  
                
rel#34111:AbstractConverter.LOGICAL.ANY([]).[](child=rel#34110:Subset#9.PHYSICAL.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=7521.875, cumulative cost={inf}                                       
                                                                 
                
rel#34124:AbstractConverter.LOGICAL.ANY([]).[](child=rel#34123:Subset#9.PHYSICAL.RANDOM_DISTRIBUTED([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=7521.875, cumulative cost={inf}                                       
                                                  
        rel#34110:Subset#9.PHYSICAL.ANY([]).[], best=rel#34122, 
importance=0.5904900000000001            
                
rel#34112:AbstractConverter.PHYSICAL.ANY([]).[](child=rel#34095:Subset#9.LOGICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=7521.875, cumulative cost={inf}                                       
                                                                
                
rel#34125:AbstractConverter.PHYSICAL.ANY([]).[](child=rel#34123:Subset#9.PHYSICAL.RANDOM_DISTRIBUTED([]).[],convention=PHYSICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=7521.875, cumulative cost={inf}                                       
                                                
                
rel#34126:AbstractConverter.PHYSICAL.RANDOM_DISTRIBUTED([]).[](child=rel#34095:Subset#9.LOGICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=RANDOM_DISTRIBUTED([]),sort=[]),
 rowcount=7521.875, cumulative cost={inf}                                       
                                  
                
rel#34127:AbstractConverter.PHYSICAL.RANDOM_DISTRIBUTED([]).[](child=rel#34110:Subset#9.PHYSICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=RANDOM_DISTRIBUTED([]),sort=[]),
 rowcount=7521.875, cumulative cost={inf}                                       
                                 
                
rel#34122:FilterPrel.PHYSICAL.RANDOM_DISTRIBUTED([]).[](child=rel#34113:Subset#8.PHYSICAL.ANY([]).[],condition=AND(>=($2,
 1997-01-01), <=($2, 1998-01-01), <($1, 24))), rowcount=7521.875, cumulative 
cost={120350.0 rows, 1022975.0 cpu, 0.0 io, 0.0 network}                        
                     
        rel#34123:Subset#9.PHYSICAL.RANDOM_DISTRIBUTED([]).[], best=rel#34122, 
importance=0.531441       
                
rel#34126:AbstractConverter.PHYSICAL.RANDOM_DISTRIBUTED([]).[](child=rel#34095:Subset#9.LOGICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=RANDOM_DISTRIBUTED([]),sort=[]),
 rowcount=7521.875, cumulative cost={inf}                                       
                                  
                
rel#34127:AbstractConverter.PHYSICAL.RANDOM_DISTRIBUTED([]).[](child=rel#34110:Subset#9.PHYSICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=RANDOM_DISTRIBUTED([]),sort=[]),
 rowcount=7521.875, cumulative cost={inf}                                       
                                 
                
rel#34122:FilterPrel.PHYSICAL.RANDOM_DISTRIBUTED([]).[](child=rel#34113:Subset#8.PHYSICAL.ANY([]).[],condition=AND(>=($2,
 1997-01-01), <=($2, 1998-01-01), <($1, 24))), rowcount=7521.875, cumulative 
cost={120350.0 rows, 1022975.0 cpu, 0.0 io, 0.0 network}                        
                     
Set#10, type: RecordType(ANY $f0)                                               
                         
        rel#34097:Subset#10.LOGICAL.ANY([]).[], best=rel#34096, 
importance=0.7290000000000001            
                
rel#34096:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#34095:Subset#9.LOGICAL.ANY([]).[],$f0=*($3,
 $4)), rowcount=7521.875, cumulative cost={127871.875 rows, 1022979.0 cpu, 0.0 
io, 0.0 network} 
                
rel#34133:AbstractConverter.LOGICAL.ANY([]).[](child=rel#34132:Subset#10.PHYSICAL.RANDOM_DISTRIBUTED([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=7521.875, cumulative cost={inf}                                       
                                                 
        rel#34132:Subset#10.PHYSICAL.RANDOM_DISTRIBUTED([]).[], best=rel#34131, 
importance=0.6561        
                
rel#34134:AbstractConverter.PHYSICAL.RANDOM_DISTRIBUTED([]).[](child=rel#34097:Subset#10.LOGICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=RANDOM_DISTRIBUTED([]),sort=[]),
 rowcount=7521.875, cumulative cost={inf}                                       
                                 
                
rel#34131:ProjectPrel.PHYSICAL.RANDOM_DISTRIBUTED([]).[](child=rel#34123:Subset#9.PHYSICAL.RANDOM_DISTRIBUTED([]).[],$f0=*($3,
 $4)), rowcount=7521.875, cumulative cost={127871.875 rows, 1022979.0 cpu, 0.0 
io, 0.0 network}
Set#11, type: RecordType(ANY revenue)
        rel#34099:Subset#11.LOGICAL.ANY([]).[], best=rel#34098, importance=0.81
                
rel#34098:DrillAggregateRel.LOGICAL.ANY([]).[](child=rel#34097:Subset#10.LOGICAL.ANY([]).[],group={},revenue=SUM($0)),
 rowcount=752.1875, cumulative cost={127872.875 rows, 1022980.0 cpu, 0.0 io, 
0.0 network}
                
rel#34106:AbstractConverter.LOGICAL.ANY([]).[](child=rel#34105:Subset#11.PHYSICAL.SINGLETON([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.7976931348623157E308, cumulative cost={inf}
        rel#34105:Subset#11.PHYSICAL.SINGLETON([]).[], best=null, 
importance=0.7290000000000001
                
rel#34107:AbstractConverter.PHYSICAL.SINGLETON([]).[](child=rel#34099:Subset#11.LOGICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=SINGLETON([]),sort=[]),
 rowcount=752.1875, cumulative cost={inf}
Set#12, type: RecordType(ANY revenue)
        rel#34101:Subset#12.LOGICAL.ANY([]).[], best=rel#34100, importance=0.9
                
rel#34100:DrillScreenRel.LOGICAL.ANY([]).[](child=rel#34099:Subset#11.LOGICAL.ANY([]).[]),
 rowcount=752.1875, cumulative cost={127948.09375 rows, 1023055.21875 cpu, 0.0 
io, 0.0 network}
                
rel#34103:AbstractConverter.LOGICAL.ANY([]).[](child=rel#34102:Subset#12.PHYSICAL.SINGLETON([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
 rowcount=1.7976931348623157E308, cumulative cost={inf}
        rel#34102:Subset#12.PHYSICAL.SINGLETON([]).[], best=null, importance=1.0
                
rel#34104:AbstractConverter.PHYSICAL.SINGLETON([]).[](child=rel#34101:Subset#12.LOGICAL.ANY([]).[],convention=PHYSICAL,DrillDistributionTraitDef=SINGLETON([]),sort=[]),
 rowcount=752.1875, cumulative cost={inf}
                
rel#34108:ScreenPrel.PHYSICAL.SINGLETON([]).[](child=rel#34105:Subset#11.PHYSICAL.SINGLETON([]).[]),
 rowcount=1.7976931348623157E308, cumulative cost={inf}

 ]"
]



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to