[ 
https://issues.apache.org/jira/browse/DRILL-774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14002168#comment-14002168
 ] 

Zhiyong Liu commented on DRILL-774:
-----------------------------------

Here you go:

0: jdbc:drill:schema=dfs.TpcHMulti> explain plan for select l.l_partkey, 
count(*) from lineitem l, partsupp ps where l.l_partkey = ps.ps_partkey group 
by l.l_partkey;                                            
+------------+------------+                                                     
                         
|    text    |    json    |                                                     
                         
+------------+------------+                                                     
                         
| ScreenPrel                                                                    
                         
  UnionExchangePrel                                                             
                         
    HashAggPrel(group=[{0}], EXPR$1=[COUNT()])                                  
                         
      ProjectPrel(l_partkey=[$1])                                               
                         
        HashJoinPrel(condition=[=($1, $3)], joinType=[inner])                   
                         
          HashToRandomExchangePrel(dist0=[[$1]])                                
                         
            ScanPrel(groupscan=[ParquetGroupScan [entries=[ReadEntryWithPath 
[path=maprfs:/drill/testdata/tpch-multi/lineitem]], 
selectionRoot=/drill/testdata/tpch-multi/lineitem, columns=[SchemaPath 
[`l_partkey`]]]])                                                               
                                   
          HashToRandomExchangePrel(dist0=[[$1]])                                
                         
            ScanPrel(groupscan=[ParquetGroupScan [entries=[ReadEntryWithPath 
[path=maprfs:/drill/testdata/tpch-multi/partsupp]], 
selectionRoot=/drill/testdata/tpch-multi/partsupp, columns=[SchemaPath 
[`ps_partkey`]]]])                                                              
                                   
 | {                                                                            
                         
  "head" : {                                                                    
                         
    "version" : 1,                                                              
                         
    "generator" : {                                                             
                         
      "type" : "ExplainHandler",                                                
                         
      "info" : ""                                                               
                         
    },                                                                          
                         
    "type" : "APACHE_DRILL_PHYSICAL",                                           
                         
    "options" : [ ],                                                            
                         
    "resultMode" : "EXEC"                                                       
                         
  },                                                                            
                         
  "graph" : [ {                                                                 
                         
    "pop" : "parquet-scan",                                                     
                         
    "@id" : 1,                                                                  
                         
    "entries" : [ {                                                             
                         
      "path" : "maprfs:/drill/testdata/tpch-multi/lineitem"                     
                         
    } ],                                                                        
                         
    "storage" : {                                                               
                         
      "type" : "file",                                                          
                         
      "connection" : "maprfs:///",                                              
                         
      "workspaces" : {                                                          
                         
        "root" : {                                                              
                         
          "location" : "/",                                                     
                         
          "writable" : false,                                                   
                         
          "storageformat" : null                                                
                         
        },                                                                      
                         
        "TpcHMulti" : {                                                         
                         
          "location" : "/drill/testdata/tpch-multi",                            
                         
          "writable" : true,                                                    
                         
          "storageformat" : "parquet"                                           
                         
        },                                                                      
                         
        "TpcH001" : {                                                           
                         
          "location" : "/drill/testdata/tpch001",                               
                         
          "writable" : true,                                                    
                         
          "storageformat" : "parquet"                                           
                         
        },                                                                      
                         
        "P1Tests" : {                                                           
                         
          "location" : "/drill/testdata/p1tests",                               
                         
          "writable" : true,                                                    
                         
          "storageformat" : "parquet"                                           
                         
        },                                                                      
                         
        "Krystal" : {                                                           
                         
          "location" : "/drill/testdata/krystal",                               
                         
          "writable" : true,                                                    
                         
          "storageformat" : "parquet"                                           
                         
        },                                                                      
                         
        "Amplab" : {                                                            
                         
          "location" : "/drill/testdata/amplab",                                
                         
          "writable" : true,                                                    
                         
          "storageformat" : "parquet"                                           
                         
        },                                                                      
                         
        "tmp" : {                                                               
                         
          "location" : "/tmp",                                                  
                         
          "writable" : true,                                                    
                         
          "storageformat" : "csv"                                               
                         
        }                                                                       
                         
      },                                                                        
                         
      "formats" : {                                                             
                         
        "psv" : {                                                               
                         
          "type" : "text",                                                      
                         
          "extensions" : [ "tbl" ],                                             
                         
          "delimiter" : "|"                                                     
                         
        },                                                                      
                         
        "csv" : {                                                               
                         
          "type" : "text",                                                      
                         
          "extensions" : [ "csv" ],                                             
                         
          "delimiter" : ","                                                     
                         
        },                                                                      
                         
        "tsv" : {                                                               
                         
          "type" : "text",                                                      
                         
          "extensions" : [ "tsv" ],                                             
                         
          "delimiter" : "\t"                                                    
                         
        },                                                                      
                         
        "parquet" : {                                                           
                         
          "type" : "parquet"                                                    
                         
        },                                                                      
                         
        "json" : {                                                              
                         
          "type" : "json"                                                       
                         
        }                                                                       
                         
      }                                                                         
                         
    },                                                                          
                         
    "format" : {                                                                
                         
      "type" : "parquet"                                                        
                         
    },                                                                          
                         
    "columns" : [ "`l_partkey`" ],                                              
                         
    "selectionRoot" : "/drill/testdata/tpch-multi/lineitem"                     
                         
  }, {                                                                          
                         
    "pop" : "hash-to-random-exchange",                                          
                         
    "@id" : 2,                                                                  
                         
    "child" : 1,                                                                
                         
    "expr" : "hash(`l_partkey`) ",                                              
                         
    "initialAllocation" : 1000000,                                              
                         
    "maxAllocation" : 10000000000                                               
                         
  }, {                                                                          
                         
    "pop" : "parquet-scan",                                                     
                         
    "@id" : 3,                                                                  
                         
    "entries" : [ {                                                             
                         
      "path" : "maprfs:/drill/testdata/tpch-multi/partsupp"                     
                         
    } ],                                                                        
                         
    "storage" : {                                                               
                         
      "type" : "file",                                                          
                         
      "connection" : "maprfs:///",                                              
                         
      "workspaces" : {                                                          
                         
        "root" : {                                                              
                         
          "location" : "/",                                                     
                         
          "writable" : false,                                                   
                         
          "storageformat" : null                                                
                         
        },                                                                      
                         
        "TpcHMulti" : {                                                         
                         
          "location" : "/drill/testdata/tpch-multi",                            
                         
          "writable" : true,                                                    
                         
          "storageformat" : "parquet"                                           
                         
        },                                                                      
                         
        "TpcH001" : {                                                           
                         
          "location" : "/drill/testdata/tpch001",                               
                         
          "writable" : true,                                                    
                         
          "storageformat" : "parquet"                                           
                         
        },                                                                      
                         
        "P1Tests" : {                                                           
                         
          "location" : "/drill/testdata/p1tests",                               
                         
          "writable" : true,                                                    
                         
          "storageformat" : "parquet"                                           
                         
        },                                                                      
                         
        "Krystal" : {                                                           
                         
          "location" : "/drill/testdata/krystal",                               
                         
          "writable" : true,                                                    
                         
          "storageformat" : "parquet"                                           
                         
        },                                                                      
                         
        "Amplab" : {                                                            
                         
          "location" : "/drill/testdata/amplab",                                
                         
          "writable" : true,                                                    
                         
          "storageformat" : "parquet"                                           
                         
        },                                                                      
                         
        "tmp" : {                                                               
                         
          "location" : "/tmp",                                                  
                         
          "writable" : true,                                                    
                         
          "storageformat" : "csv"                                               
                         
        }                                                                       
                         
      },                                                                        
                         
      "formats" : {                                                             
                         
        "psv" : {                                                               
                         
          "type" : "text",                                                      
                         
          "extensions" : [ "tbl" ],                                             
                         
          "delimiter" : "|"                                                     
                         
        },                                                                      
                         
        "csv" : {                                                               
                         
          "type" : "text",                                                      
                         
          "extensions" : [ "csv" ],                                             
                         
          "delimiter" : ","                                                     
                         
        },                                                                      
                         
        "tsv" : {                                                               
                         
          "type" : "text",                                                      
                         
          "extensions" : [ "tsv" ],                                             
                         
          "delimiter" : "\t"                                                    
                         
        },                                                                      
                         
        "parquet" : {                                                           
                         
          "type" : "parquet"                                                    
                         
        },                                                                      
                         
        "json" : {                                                              
                         
          "type" : "json"                                                       
                         
        }                                                                       
                         
      }                                                                         
                         
    },                                                                          
                         
    "format" : {                                                                
                         
      "type" : "parquet"                                                        
                         
    },                                                                          
                         
    "columns" : [ "`ps_partkey`" ],                                             
                         
    "selectionRoot" : "/drill/testdata/tpch-multi/partsupp"                     
                         
  }, {                                                                          
                         
    "pop" : "hash-to-random-exchange",                                          
                         
    "@id" : 4,                                                                  
                         
    "child" : 3,                                                                
                         
    "expr" : "hash(`ps_partkey`) ",                                             
                         
    "initialAllocation" : 1000000,                                              
                         
    "maxAllocation" : 10000000000                                               
                         
  }, {                                                                          
                         
    "pop" : "project",                                                          
                         
    "@id" : 5,                                                                  
                         
    "exprs" : [ {                                                               
                         
      "ref" : "`*0`",                                                           
                         
      "expr" : "`*`"                                                            
                         
    }, {                                                                        
                         
      "ref" : "`ps_partkey`",                                                   
                         
      "expr" : "`ps_partkey`"                                                   
                         
    } ],                                                                        
                         
    "child" : 4,                                                                
                         
    "initialAllocation" : 1000000,                                              
                         
    "maxAllocation" : 10000000000                                               
                         
  }, {                                                                          
                         
    "pop" : "hash-join",                                                        
                         
    "@id" : 6,                                                                  
                         
    "left" : 2,                                                                 
                         
    "right" : 5,                                                                
                         
    "conditions" : [ {                                                          
                         
      "relationship" : "==",                                                    
                         
      "left" : "`l_partkey`",                                                   
                         
      "right" : "`ps_partkey`"                                                  
                         
    } ],                                                                        
                         
    "joinType" : "INNER",                                                       
                         
    "initialAllocation" : 1000000,                                              
                         
    "maxAllocation" : 10000000000                                               
                         
  }, {                                                                          
                         
    "pop" : "project",                                                          
                         
    "@id" : 7,                                                                  
                         
    "exprs" : [ {                                                               
                         
      "ref" : "`l_partkey`",                                                    
                         
      "expr" : "`l_partkey`"                                                    
                         
    } ],                                                                        
                         
    "child" : 6,                                                                
                         
    "initialAllocation" : 1000000,                                              
                         
    "maxAllocation" : 10000000000                                               
                         
  }, {                                                                          
                         
    "pop" : "hash-aggregate",                                                   
                         
    "@id" : 8,                                                                  
                         
    "child" : 7,                                                                
                         
    "cardinality" : 1.0,                                                        
                         
    "initialAllocation" : 1000000,                                              
                         
    "maxAllocation" : 10000000000,                                              
                         
    "groupByExprs" : [ {                                                        
                         
      "ref" : "`l_partkey`",                                                    
                         
      "expr" : "`l_partkey`"
    } ],
    "aggrExprs" : [ {
      "ref" : "`EXPR$1`",
      "expr" : "count(1) "
    } ],
    "htConfig" : {
      "initialCapacity" : 256,
      "loadFactor" : 0.75,
      "keyExprsBuild" : [ {
        "ref" : "`l_partkey`",
        "expr" : "`l_partkey`"
      } ],
      "keyExprsProbe" : null
    }
  }, {
    "pop" : "union-exchange",
    "@id" : 9,
    "child" : 8,
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000
  }, {
    "pop" : "screen",
    "@id" : 10,
    "child" : 9,
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000
  } ]
} |
+------------+------------+
1 row selected (0.118 seconds)

> verification fails for group-by
> -------------------------------
>
>                 Key: DRILL-774
>                 URL: https://issues.apache.org/jira/browse/DRILL-774
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Functions - Drill
>            Reporter: Zhiyong Liu
>
> Datasources: TPCH (10MB), three-way split parquet files
> git.commit.id.abbrev=70fab8c
> git.commit.id=70fab8c968a6dc05471aa1f32009cd15945d4f3d
> Verification fails for the following query:
> 2014-05-19 10:39:34 INFO  QuerySubmitter:92 - Submitting query:               
>                             
> select l.l_partkey, count(*)                                                  
>                             
>   from lineitem l,                                                            
>                             
>           partsupp ps                                                         
>                             
>   where l.l_partkey = ps.ps_partkey                                           
>                             
> group by l.l_partkey                                                          
>                             
> 2014-05-19 10:39:35 INFO  DrillTestBase:198 - Query submit end time: 
> 2014/05/19 10:39:35.0035             
> 2014-05-19 10:39:35 INFO  DrillTestBase:199 - The execution time for the 
> query: 1 seconds.                
> 2014-05-19 10:39:35 INFO  TestVerifier:203 - These rows are not expected:     
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:206 -    1245    11 : 1 time(s).       
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:206 -    1296    63 : 1 time(s).       
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:206 -    929     103 : 1 time(s).      
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:206 -    1245    117 : 1 time(s).      
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:206 -    1125    105 : 1 time(s).      
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:206 -    929     1 : 1 time(s).        
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:206 -    1251    96 : 1 time(s).       
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:213 - Total number of unexpected rows: 
> 7                           
> 2014-05-19 10:39:35 INFO  TestVerifier:217 - These rows are expected but are 
> not in result set:           
> 2014-05-19 10:39:35 INFO  TestVerifier:220 -    1125    140 : 1 time(s).      
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:220 -    929     104 : 1 time(s).      
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:220 -    1296    84 : 1 time(s).       
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:220 -    1245    128 : 1 time(s).      
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:220 -    1251    128 : 1 time(s).      
>                             
> 2014-05-19 10:39:35 INFO  TestVerifier:227 - Total number of expected but 
> missing: 5 



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

Reply via email to