You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Neeraja (JIRA)" <ji...@apache.org> on 2014/09/10 15:50:29 UTC

[jira] [Created] (DRILL-1397) Query with IN clause and correlation fails

Neeraja created DRILL-1397:
------------------------------

             Summary: Query with IN clause and correlation fails
                 Key: DRILL-1397
                 URL: https://issues.apache.org/jira/browse/DRILL-1397
             Project: Apache Drill
          Issue Type: Bug
            Reporter: Neeraja
            Priority: Critical


The following query fails. This could be related to https://issues.apache.org/jira/browse/DRILL-1396, but filing separate issue as the error is different.

0: jdbc:drill:> select t.trans_info.purch_flag,
. . . . . . . >           t.user_info.cust_id, t.trans_info.prod_id[0]
. . . . . . . > from `Clickstream.clicks`.`/json/clicks.json` t 
. . . . . . . > where  t.user_info.cust_id IN (select o.cust_id from hive.orders o where o.order_total >100 );

Query failed: Failure while running fragment. Incoming batch has an empty schema. This is not allowed. [2b441a79-be49-4116-a459-513f97418738]
Error: exception while executing query: Failure while trying to get next result batch. (state=,code=0)

Below is the explain plan.
+------------+------------+
|    text    |    json    |
+------------+------------+
| 00-00    Screen
00-01      Project(EXPR$0=[$0], EXPR$1=[$1], EXPR$2=[$2])
00-02        Project(EXPR$0=[ITEM($1, 'purch_flag')], EXPR$1=[ITEM($0, 'cust_id')], EXPR$2=[ITEM(ITEM($1, 'prod_id'), 0)])
00-03          HashJoin(condition=[=($2, $3)], joinType=[inner])
00-05            Project(T27¦¦user_info=[$1], T27¦¦trans_info=[$2], $f3=[ITEM($1, 'cust_id')])
00-07              Project(T27¦¦*=[$0], T27¦¦user_info=[$1], T27¦¦trans_info=[$2])
00-09                Scan(groupscan=[EasyGroupScan [selectionRoot=/mapr/my.cluster.com/demo/clicks/json/clicks.json, columns = null]])
00-04            HashAgg(group=[{0}])
00-06              Project(cust_id=[$0])
00-08                SelectionVectorRemover
00-10                  Filter(condition=[>($1, 100)])
00-11                    Project(cust_id=[$1], order_total=[$0])
00-12                      Scan(groupscan=[HiveScan [table=Table(tableName:orders, dbName:default, owner:root, createTime:1409956843, lastAccessTime:0, retention:0, sd:StorageDescriptor(cols:[FieldSchema(name:order_id, type:bigint, comment:null), FieldSchema(name:month, type:string, comment:null), FieldSchema(name:purchdate, type:timestamp, comment:null), FieldSchema(name:cust_id, type:bigint, comment:null), FieldSchema(name:state, type:string, comment:null), FieldSchema(name:prod_id, type:bigint, comment:null), FieldSchema(name:order_total, type:int, comment:null)], location:maprfs:/mapr/my.cluster.com/drill-beta-demo/data/orders, inputFormat:org.apache.hadoop.mapred.TextInputFormat, outputFormat:org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat, compressed:false, numBuckets:-1, serdeInfo:SerDeInfo(name:null, serializationLib:org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, parameters:{serialization.format=,, field.delim=,}), bucketCols:[], sortCols:[], parameters:{}, skewedInfo:SkewedInfo(skewedColNames:[], skewedColValues:[], skewedColValueLocationMaps:{}), storedAsSubDirectories:false), partitionKeys:[], parameters:{EXTERNAL=TRUE, transient_lastDdlTime=1409956843}, viewOriginalText:null, viewExpandedText:null, tableType:EXTERNAL_TABLE), inputSplits=[maprfs:/mapr/my.cluster.com/drill-beta-demo/data/orders/month2.agg.orders.csv:0+640155, maprfs:/mapr/my.cluster.com/drill-beta-demo/data/orders/month5.agg.orders.csv:0+775506, maprfs:/mapr/my.cluster.com/drill-beta-demo/data/orders/month6.agg.orders.csv:0+791685, maprfs:/mapr/my.cluster.com/drill-beta-demo/data/orders/month8.agg.orders.csv:0+805072, maprfs:/mapr/my.cluster.com/drill-beta-demo/data/orders/month4.agg.orders.csv:0+603886, maprfs:/mapr/my.cluster.com/drill-beta-demo/data/orders/month9.agg.orders.csv:0+846270, maprfs:/mapr/my.cluster.com/drill-beta-demo/data/orders/month1.agg.orders.csv:0+461090, maprfs:/mapr/my.cluster.com/drill-beta-demo/data/orders/month7.agg.orders.csv:0+771399, maprfs:/mapr/my.cluster.com/drill-beta-demo/data/orders/month3.agg.orders.csv:0+806738], columns=[SchemaPath [`cust_id`], SchemaPath [`order_total`]]]])
 | {
  "head" : {
    "version" : 1,
    "generator" : {
      "type" : "ExplainHandler",
      "info" : ""
    },
    "type" : "APACHE_DRILL_PHYSICAL",
    "options" : [ ],
    "queue" : 0,
    "resultMode" : "EXEC"
  },
  "graph" : [ {
    "pop" : "hive-scan",
    "@id" : 12,
    "hive-table" : {
      "table" : {
        "tableName" : "orders",
        "dbName" : "default",
        "owner" : "root",
        "createTime" : 1409956843,
        "lastAccessTime" : 0,
        "retention" : 0,
        "sd" : {
          "cols" : [ {
            "name" : "order_id",
            "type" : "bigint",
            "comment" : null
          }, {
            "name" : "month",
            "type" : "string",
            "comment" : null
          }, {
            "name" : "purchdate",
            "type" : "timestamp",
            "comment" : null
          }, {
            "name" : "cust_id",
            "type" : "bigint",
            "comment" : null
          }, {
            "name" : "state",
            "type" : "string",
            "comment" : null
          }, {
            "name" : "prod_id",
            "type" : "bigint",
            "comment" : null
          }, {
            "name" : "order_total",
            "type" : "int",
            "comment" : null
          } ],
          "location" : "maprfs:/mapr/my.cluster.com/drill-beta-demo/data/orders",
          "inputFormat" : "org.apache.hadoop.mapred.TextInputFormat",
          "outputFormat" : "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat",
          "compressed" : false,
          "numBuckets" : -1,
          "serDeInfo" : {
            "name" : null,
            "serializationLib" : "org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe",
            "parameters" : {
              "serialization.format" : ",",
              "field.delim" : ","
            }
          },
          "sortCols" : [ ],
          "parameters" : { }
        },
        "partitionKeys" : [ ],
        "parameters" : {
          "EXTERNAL" : "TRUE",
          "transient_lastDdlTime" : "1409956843"
        },
        "viewOriginalText" : null,
        "viewExpandedText" : null,
        "tableType" : "EXTERNAL_TABLE"
      },
      "partitions" : null,
      "hiveConfigOverride" : {
        "hive.metastore.uris" : "thrift://192.168.208.143:9083",
        "hive.metastore.sasl.enabled" : "false"
      }
    },
    "storage-plugin" : "hive",
    "columns" : [ "`cust_id`", "`order_total`" ],
    "cost" : 6349.0
  }, {
    "pop" : "project",
    "@id" : 11,
    "exprs" : [ {
      "ref" : "`cust_id`",
      "expr" : "`cust_id`"
    }, {
      "ref" : "`order_total`",
      "expr" : "`order_total`"
    } ],
    "child" : 12,
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000,
    "cost" : 6349.0
  }, {
    "pop" : "filter",
    "@id" : 10,
    "child" : 11,
    "expr" : "greater_than(`order_total`, 100) ",
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000,
    "cost" : 3174.5
  }, {
    "pop" : "selection-vector-remover",
    "@id" : 8,
    "child" : 10,
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000,
    "cost" : 3174.5
  }, {
    "pop" : "project",
    "@id" : 6,
    "exprs" : [ {
      "ref" : "`cust_id`",
      "expr" : "`cust_id`"
    } ],
    "child" : 8,
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000,
    "cost" : 3174.5
  }, {
    "pop" : "hash-aggregate",
    "@id" : 4,
    "child" : 6,
    "cardinality" : 1.0,
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000,
    "cost" : 1587.25,
    "groupByExprs" : [ {
      "ref" : "`cust_id`",
      "expr" : "`cust_id`"
    } ],
    "aggrExprs" : [ ]
  }, {
    "pop" : "fs-scan",
    "@id" : 9,
    "files" : [ "maprfs:/mapr/my.cluster.com/demo/clicks/json/clicks.json" ],
    "storage" : {
      "type" : "file",
      "enabled" : true,
      "connection" : "maprfs:///",
      "workspaces" : {
        "root" : {
          "location" : "/mapr/my.cluster.com/demo",
          "writable" : false,
          "storageformat" : null
        },
        "clicks" : {
          "location" : "/mapr/my.cluster.com/demo/clicks",
          "writable" : true,
          "storageformat" : "parquet"
        },
        "views" : {
          "location" : "/mapr/my.cluster.com/demo/views",
          "writable" : true,
          "storageformat" : "parquet"
        }
      },
      "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" : "json"
    },
    "selectionRoot" : "/mapr/my.cluster.com/demo/clicks/json/clicks.json",
    "cost" : 5097.0
  }, {
    "pop" : "project",
    "@id" : 7,
    "exprs" : [ {
      "ref" : "`T27¦¦*`",
      "expr" : "`*`"
    } ],
    "child" : 9,
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000,
    "cost" : 5097.0
  }, {
    "pop" : "project",
    "@id" : 5,
    "exprs" : [ {
      "ref" : "`T27¦¦user_info`",
      "expr" : "`T27¦¦user_info`"
    }, {
      "ref" : "`T27¦¦trans_info`",
      "expr" : "`T27¦¦trans_info`"
    }, {
      "ref" : "`$f3`",
      "expr" : "`T27¦¦user_info`.`cust_id`"
    } ],
    "child" : 7,
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000,
    "cost" : 5097.0
  }, {
    "pop" : "hash-join",
    "@id" : 3,
    "left" : 5,
    "right" : 4,
    "conditions" : [ {
      "relationship" : "==",
      "left" : "`$f3`",
      "right" : "`cust_id`"
    } ],
    "joinType" : "INNER",
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000,
    "cost" : 5097.0
  }, {
    "pop" : "project",
    "@id" : 2,
    "exprs" : [ {
      "ref" : "`EXPR$0`",
      "expr" : "`T27¦¦trans_info`.`purch_flag`"
    }, {
      "ref" : "`EXPR$1`",
      "expr" : "`T27¦¦user_info`.`cust_id`"
    }, {
      "ref" : "`EXPR$2`",
      "expr" : "`T27¦¦trans_info`.`prod_id`[0]"
    } ],
    "child" : 3,
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000,
    "cost" : 5097.0
  }, {
    "pop" : "project",
    "@id" : 1,
    "exprs" : [ {
      "ref" : "`EXPR$0`",
      "expr" : "`EXPR$0`"
    }, {
      "ref" : "`EXPR$1`",
      "expr" : "`EXPR$1`"
    }, {
      "ref" : "`EXPR$2`",
      "expr" : "`EXPR$2`"
    } ],
    "child" : 2,
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000,
    "cost" : 5097.0
  }, {
    "pop" : "screen",
    "@id" : 0,
    "child" : 1,
    "initialAllocation" : 1000000,
    "maxAllocation" : 10000000000,
    "cost" : 5097.0
  } ]
} |
+------------+------------+





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)