[
https://issues.apache.org/jira/browse/DRILL-1655?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jacques Nadeau updated DRILL-1655:
----------------------------------
Fix Version/s: 0.8.0
Assignee: Jinfeng Ni
Summary: Cannot plan simple join + group by + order + limit query
(was: SQL parsing error with aggregate field)
> Cannot plan simple join + group by + order + limit query
> ---------------------------------------------------------
>
> Key: DRILL-1655
> URL: https://issues.apache.org/jira/browse/DRILL-1655
> Project: Apache Drill
> Issue Type: Bug
> Components: Query Planning & Optimization
> Reporter: Tomer Shiran
> Assignee: Jinfeng Ni
> Fix For: 0.8.0
>
>
> The first query here works fine. As soon as I add another field
> (avg(u.average_stars) as stars) and order by on that field, it no longer
> works.
> {code}
> 0: jdbc:drill:zk=local> select u.name, n.gender, count(*) as number from
> mongo.yelp.users u, dfs.mydata.namegender n where u.name = n.name group by
> u.name, n.gender order by number desc limit 1;
> +------------+------------+------------+
> | name | gender | number |
> +------------+------------+------------+
> | David | Male | 2453 |
> +------------+------------+------------+
> 1 row selected (6.008 seconds)
> 0: jdbc:drill:zk=local> select u.name, n.gender, count(*) as number,
> avg(u.average_stars) stars from mongo.yelp.users u, dfs.mydata.namegender n
> where u.name = n.name group by u.name, n.gender order by stars desc limit 1;
> Query failed: Failure while parsing sql. Node
> [rel#38935:Subset#7.LOGICAL.ANY([]).[3 DESC]] could not be implemented;
> planner state:
> Root: rel#38935:Subset#7.LOGICAL.ANY([]).[3 DESC]
> Original rel:
> AbstractConverter(subset=[rel#38935:Subset#7.LOGICAL.ANY([]).[3 DESC]],
> convention=[LOGICAL], DrillDistributionTraitDef=[ANY([])], sort=[[3 DESC]]):
> rowcount = 1.7976931348623157E308, cumulative cost = {inf}, id = 38936
> SortRel(subset=[rel#38934:Subset#7.NONE.ANY([]).[3 DESC]], sort0=[$3],
> dir0=[DESC], fetch=[1]): rowcount = 1.7976931348623157E308, cumulative cost =
> {Infinity rows, 1.7976931348623157E308 cpu, 0.0 io, 0.0 network, 0.0 memory},
> id = 38933
> AggregateRel(subset=[rel#38932:Subset#6.NONE.ANY([]).[]], group=[{0, 1}],
> number=[COUNT()], stars=[AVG($2)]): rowcount = 1.7976931348623158E307,
> cumulative cost = {1.7976931348623158E307 rows, 0.0 cpu, 0.0 io, 0.0 network,
> 0.0 memory}, id = 38931
> ProjectRel(subset=[rel#38930:Subset#5.NONE.ANY([]).[]], name=[$1],
> gender=[$3], name0=[$2]): rowcount Error: exception while executing query:
> Failure while trying to get next result batch. (state=,code=0)
> = 1.7976931348623157E308, cumulative cost = {1.7976931348623157E308 rows,
> Infinity cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 38929
> FilterRel(subset=[rel#38928:Subset#4.NONE.ANY([]).[]],
> condition=[=($1, $2)]): rowcount = 2.6965397022934733E307, cumulative cost =
> {2.6965397022934733E307 rows, 1.7976931348623157E308 cpu, 0.0 io, 0.0
> network, 0.0 memory}, id = 38927
> JoinRel(subset=[rel#38926:Subset#3.NONE.ANY([]).[]],
> condition=[true], joinType=[inner]): rowcount = 1.7976931348623157E308,
> cumulative cost = {1.7976931348623157E308 rows, 0.0 cpu, 0.0 io, 0.0 network,
> 0.0 memory}, id = 38925
>
> EnumerableTableAccessRel(subset=[rel#38921:Subset#0.ENUMERABLE.ANY([]).[]],
> table=[[mongo, yelp, users]]): rowcount = 100.0, cumulative cost = {100.0
> rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 38897
> ProjectRel(subset=[rel#38924:Subset#2.NONE.ANY([]).[]],
> name=[ITEM($1, 0)], gender=[ITEM($1, 4)]): rowcount = 100.0, cumulative cost
> = {100.0 rows, 200.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 38923
>
> EnumerableTableAccessRel(subset=[rel#38922:Subset#1.ENUMERABLE.ANY([]).[]],
> table=[[dfs, mydata, names.csv]]): rowcount = 100.0, cumulative cost = {100.0
> rows, 101.0 cpu, 0.0 io, 0.0 network, 0.0 memory}, id = 38900
> Sets:
> Set#0, type: (DrillRecordRow[*, name, average_stars])
> rel#38921:Subset#0.ENUMERABLE.ANY([]).[], best=rel#38897,
> importance=0.531441
>
> rel#38897:EnumerableTableAccessRel.ENUMERABLE.ANY([]).[](table=[mongo, yelp,
> users]), rowcount=100.0, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io, 0.0
> network, 0.0 memory}
>
> rel#38979:AbstractConverter.ENUMERABLE.ANY([]).[](child=rel#38978:Subset#0.LOGICAL.ANY([]).[],convention=ENUMERABLE,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=252898.0, cumulative cost={inf}
> rel#38978:Subset#0.LOGICAL.ANY([]).[], best=rel#39094,
> importance=0.4782969000000001
>
> rel#38980:AbstractConverter.LOGICAL.ANY([]).[](child=rel#38921:Subset#0.ENUMERABLE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=100.0, cumulative cost={inf}
> rel#39094:DrillScanRel.LOGICAL.ANY([]).[](table=[mongo, yelp,
> users],groupscan=MongoGroupScan [MongoScanSpec=MongoScanSpec [dbName=yelp,
> collectionName=users, filters=null], columns=[SchemaPath [`*`]]]),
> rowcount=252898.0, cumulative cost={252898.0 rows, 2.52898E9 cpu, 0.0 io, 0.0
> network, 0.0 memory}
> Set#1, type: (DrillRecordRow[*, columns])
> rel#38922:Subset#1.ENUMERABLE.ANY([]).[], best=rel#38900,
> importance=0.4782969000000001
>
> rel#38900:EnumerableTableAccessRel.ENUMERABLE.ANY([]).[](table=[dfs, mydata,
> names.csv]), rowcount=100.0, cumulative cost={100.0 rows, 101.0 cpu, 0.0 io,
> 0.0 network, 0.0 memory}
>
> rel#39068:AbstractConverter.ENUMERABLE.ANY([]).[](child=rel#39067:Subset#1.LOGICAL.ANY([]).[],convention=ENUMERABLE,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=5710.0, cumulative cost={inf}
> rel#39067:Subset#1.LOGICAL.ANY([]).[], best=rel#39095,
> importance=0.4304672100000001
>
> rel#39069:AbstractConverter.LOGICAL.ANY([]).[](child=rel#38922:Subset#1.ENUMERABLE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=100.0, cumulative cost={inf}
> rel#39095:DrillScanRel.LOGICAL.ANY([]).[](table=[dfs, mydata,
> names.csv],groupscan=EasyGroupScan
> [selectionRoot=/Users/tshiran/Development/data/names.csv, numFiles=1, columns
> = [SchemaPath [`*`]]]), rowcount=5710.0, cumulative cost={5710.0 rows, 5.71E7
> cpu, 0.0 io, 0.0 network, 0.0 memory}
> Set#2, type: RecordType(ANY name, ANY gender)
> rel#38924:Subset#2.NONE.ANY([]).[], best=null, importance=0.531441
>
> rel#38923:ProjectRel.NONE.ANY([]).[](child=rel#38922:Subset#1.ENUMERABLE.ANY([]).[],name=ITEM($1,
> 0),gender=ITEM($1, 4)), rowcount=100.0, cumulative cost={inf}
> rel#38981:Subset#2.LOGICAL.ANY([]).[], best=rel#39033,
> importance=0.4782969000000001
>
> rel#38982:AbstractConverter.LOGICAL.ANY([]).[](child=rel#38924:Subset#2.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39033:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#39032:Subset#18.LOGICAL.ANY([]).[],name=ITEM($0,
> 0),gender=ITEM($0, 4)), rowcount=5710.0, cumulative cost={11420.0 rows,
> 5718.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
>
> rel#39075:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#39067:Subset#1.LOGICAL.ANY([]).[],name=ITEM($1,
> 0),gender=ITEM($1, 4)), rowcount=5710.0, cumulative cost={11420.0 rows,
> 5.7100008E7 cpu, 0.0 io, 0.0 network, 0.0 memory}
> Set#3, type: RecordType(ANY *, ANY name, ANY average_stars, ANY name0, ANY
> gender)
> rel#38926:Subset#3.NONE.ANY([]).[], best=null,
> importance=0.5904900000000001
>
> rel#38925:JoinRel.NONE.ANY([]).[](left=rel#38921:Subset#0.ENUMERABLE.ANY([]).[],right=rel#38924:Subset#2.NONE.ANY([]).[],condition=true,joinType=inner),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#38984:Subset#3.LOGICAL.ANY([]).[], best=null,
> importance=0.4782969000000001
>
> rel#38985:AbstractConverter.LOGICAL.ANY([]).[](child=rel#38926:Subset#3.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#38983:DrillJoinRel.LOGICAL.ANY([]).[](left=rel#38978:Subset#0.LOGICAL.ANY([]).[],right=rel#38981:Subset#2.LOGICAL.ANY([]).[],condition=true,joinType=inner),
> rowcount=252898.0, cumulative cost={inf}
> Set#4, type: RecordType(ANY *, ANY name, ANY average_stars, ANY name0, ANY
> gender)
> rel#38928:Subset#4.NONE.ANY([]).[], best=null, importance=0.6561
>
> rel#38927:FilterRel.NONE.ANY([]).[](child=rel#38926:Subset#3.NONE.ANY([]).[],condition==($1,
> $2)), rowcount=2.6965397022934733E307, cumulative cost={inf}
>
> rel#38995:JoinRel.NONE.ANY([]).[](left=rel#38994:Subset#12.NONE.ANY([]).[],right=rel#38924:Subset#2.NONE.ANY([]).[],condition=true,joinType=inner),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#38973:Subset#4.LOGICAL.ANY([]).[], best=null, importance=0.531441
>
> rel#38974:AbstractConverter.LOGICAL.ANY([]).[](child=rel#38928:Subset#4.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39037:DrillJoinRel.LOGICAL.ANY([]).[](left=rel#39035:Subset#12.LOGICAL.ANY([]).[],right=rel#38981:Subset#2.LOGICAL.ANY([]).[],condition=true,joinType=inner),
> rowcount=37934.7, cumulative cost={inf}
>
> rel#39059:DrillFilterRel.LOGICAL.ANY([]).[](child=rel#38984:Subset#3.LOGICAL.ANY([]).[],condition==($1,
> $2)), rowcount=2.6965397022934733E307, cumulative cost={inf}
> Set#5, type: RecordType(ANY name, ANY gender, ANY name0)
> rel#38930:Subset#5.NONE.ANY([]).[], best=null,
> importance=0.7290000000000001
>
> rel#38929:ProjectRel.NONE.ANY([]).[](child=rel#38928:Subset#4.NONE.ANY([]).[],name=$1,gender=$3,name0=$2),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#38961:ProjectRel.NONE.ANY([]).[](child=rel#38960:Subset#11.NONE.ANY([]).[],name=$0,gender=$2,name0=$1),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#38970:ProjectRel.NONE.ANY([]).[](child=rel#38928:Subset#4.NONE.ANY([]).[],name=$1,gender=$3,name0=$2),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#38942:Subset#5.LOGICAL.ANY([]).[], best=null, importance=0.6561
>
> rel#38943:AbstractConverter.LOGICAL.ANY([]).[](child=rel#38930:Subset#5.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39034:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#38976:Subset#11.LOGICAL.ANY([]).[],name=$0,gender=$2,name0=$1),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39038:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#38973:Subset#4.LOGICAL.ANY([]).[],name=$1,gender=$3,name0=$2),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39058:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#38973:Subset#4.LOGICAL.ANY([]).[],name=$1,gender=$3,name0=$2),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> Set#6, type: RecordType(ANY name, ANY gender, BIGINT number, ANY stars)
> rel#38932:Subset#6.NONE.ANY([]).[], best=null, importance=0.81
>
> rel#38931:AggregateRel.NONE.ANY([]).[](child=rel#38930:Subset#5.NONE.ANY([]).[],group={0,
> 1},number=COUNT(),stars=AVG($2)), rowcount=1.7976931348623158E307,
> cumulative cost={inf}
>
> rel#38950:ProjectRel.NONE.ANY([]).[](child=rel#38949:Subset#9.NONE.ANY([]).[],name=$0,gender=$1,number=$2,stars=CAST(/(CastHigh(CASE(=($2,
> 0), null, $3)), $2)):ANY), rowcount=1.7976931348623157E308, cumulative
> cost={inf}
> rel#39085:AbstractConverter.NONE.ANY([]).[3
> DESC](child=rel#38932:Subset#6.NONE.ANY([]).[],convention=NONE,DrillDistributionTraitDef=ANY([]),sort=[3
> DESC]), rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39086:AbstractConverter.NONE.ANY([]).[3
> DESC](child=rel#38945:Subset#6.LOGICAL.ANY([]).[],convention=NONE,DrillDistributionTraitDef=ANY([]),sort=[3
> DESC]), rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39087:AbstractConverter.NONE.ANY([]).[3
> DESC](child=rel#39078:Subset#6.LOGICAL.ANY([]).[3
> DESC],convention=NONE,DrillDistributionTraitDef=ANY([]),sort=[3 DESC]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#38937:SortRel.NONE.ANY([]).[3
> DESC](child=rel#38932:Subset#6.NONE.ANY([]).[],sort0=$3,dir0=DESC),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39089:SortRel.NONE.ANY([]).[3
> DESC](child=rel#38945:Subset#6.LOGICAL.ANY([]).[],sort0=$3,dir0=DESC),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#38945:Subset#6.LOGICAL.ANY([]).[], best=null,
> importance=0.7290000000000001
>
> rel#38946:AbstractConverter.LOGICAL.ANY([]).[](child=rel#38932:Subset#6.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#38944:DrillAggregateRel.LOGICAL.ANY([]).[](child=rel#38942:Subset#5.LOGICAL.ANY([]).[],group={0,
> 1},number=COUNT(),stars=AVG($2)), rowcount=1.7976931348623158E307,
> cumulative cost={inf}
>
> rel#38953:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#38951:Subset#9.LOGICAL.ANY([]).[],name=$0,gender=$1,number=$2,stars=CAST(/(CastHigh(CASE(=($2,
> 0), null, $3)), $2)):ANY), rowcount=1.7976931348623157E308, cumulative
> cost={inf}
>
> rel#39079:AbstractConverter.LOGICAL.ANY([]).[](child=rel#39078:Subset#6.LOGICAL.ANY([]).[3
> DESC],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39080:AbstractConverter.LOGICAL.ANY([]).[3
> DESC](child=rel#38932:Subset#6.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[3
> DESC]), rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39081:AbstractConverter.LOGICAL.ANY([]).[3
> DESC](child=rel#38945:Subset#6.LOGICAL.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[3
> DESC]), rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39083:AbstractConverter.LOGICAL.ANY([]).[](child=rel#39082:Subset#6.NONE.ANY([]).[3
> DESC],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39084:AbstractConverter.LOGICAL.ANY([]).[3
> DESC](child=rel#39082:Subset#6.NONE.ANY([]).[3
> DESC],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[3 DESC]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39077:DrillSortRel.LOGICAL.ANY([]).[3
> DESC](child=rel#38945:Subset#6.LOGICAL.ANY([]).[],sort0=$3,dir0=DESC),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39078:Subset#6.LOGICAL.ANY([]).[3 DESC], best=null,
> importance=0.6561
> rel#39080:AbstractConverter.LOGICAL.ANY([]).[3
> DESC](child=rel#38932:Subset#6.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[3
> DESC]), rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39081:AbstractConverter.LOGICAL.ANY([]).[3
> DESC](child=rel#38945:Subset#6.LOGICAL.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[3
> DESC]), rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39084:AbstractConverter.LOGICAL.ANY([]).[3
> DESC](child=rel#39082:Subset#6.NONE.ANY([]).[3
> DESC],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[3 DESC]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39077:DrillSortRel.LOGICAL.ANY([]).[3
> DESC](child=rel#38945:Subset#6.LOGICAL.ANY([]).[],sort0=$3,dir0=DESC),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39082:Subset#6.NONE.ANY([]).[3 DESC], best=null,
> importance=0.5904900000000001
> rel#39085:AbstractConverter.NONE.ANY([]).[3
> DESC](child=rel#38932:Subset#6.NONE.ANY([]).[],convention=NONE,DrillDistributionTraitDef=ANY([]),sort=[3
> DESC]), rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39086:AbstractConverter.NONE.ANY([]).[3
> DESC](child=rel#38945:Subset#6.LOGICAL.ANY([]).[],convention=NONE,DrillDistributionTraitDef=ANY([]),sort=[3
> DESC]), rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39087:AbstractConverter.NONE.ANY([]).[3
> DESC](child=rel#39078:Subset#6.LOGICAL.ANY([]).[3
> DESC],convention=NONE,DrillDistributionTraitDef=ANY([]),sort=[3 DESC]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#38937:SortRel.NONE.ANY([]).[3
> DESC](child=rel#38932:Subset#6.NONE.ANY([]).[],sort0=$3,dir0=DESC),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39089:SortRel.NONE.ANY([]).[3
> DESC](child=rel#38945:Subset#6.LOGICAL.ANY([]).[],sort0=$3,dir0=DESC),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> Set#7, type: RecordType(ANY name, ANY gender, BIGINT number, ANY stars)
> rel#38934:Subset#7.NONE.ANY([]).[3 DESC], best=null, importance=0.9
> rel#38933:SortRel.NONE.ANY([]).[3
> DESC](child=rel#38932:Subset#6.NONE.ANY([]).[],sort0=$3,dir0=DESC,fetch=1),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#38935:Subset#7.LOGICAL.ANY([]).[3 DESC], best=null, importance=1.0
> rel#38936:AbstractConverter.LOGICAL.ANY([]).[3
> DESC](child=rel#38934:Subset#7.NONE.ANY([]).[3
> DESC],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[3 DESC]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#38941:DrillLimitRel.LOGICAL.ANY([]).[3
> DESC](child=rel#39078:Subset#6.LOGICAL.ANY([]).[3 DESC],fetch=1),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> Set#9, type: RecordType(ANY name, ANY gender, BIGINT number, ANY $f3)
> rel#38949:Subset#9.NONE.ANY([]).[], best=null,
> importance=0.7290000000000001
>
> rel#38947:AggregateRel.NONE.ANY([]).[](child=rel#38930:Subset#5.NONE.ANY([]).[],group={0,
> 1},number=COUNT(),agg#1=$SUM0($2)), rowcount=1.7976931348623158E307,
> cumulative cost={inf}
> rel#38951:Subset#9.LOGICAL.ANY([]).[], best=null, importance=0.6561
>
> rel#38952:AbstractConverter.LOGICAL.ANY([]).[](child=rel#38949:Subset#9.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#38954:DrillAggregateRel.LOGICAL.ANY([]).[](child=rel#38942:Subset#5.LOGICAL.ANY([]).[],group={0,
> 1},number=COUNT(),agg#1=$SUM0($2)), rowcount=1.7976931348623158E307,
> cumulative cost={inf}
> Set#10, type: RecordType(ANY name, ANY average_stars, ANY name0)
> rel#38958:Subset#10.NONE.ANY([]).[], best=null,
> importance=0.5904900000000001
>
> rel#38955:ProjectRel.NONE.ANY([]).[](child=rel#38926:Subset#3.NONE.ANY([]).[],name=$1,average_stars=$2,name0=$3),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39018:JoinRel.NONE.ANY([]).[](left=rel#39017:Subset#16.NONE.ANY([]).[],right=rel#39001:Subset#14.NONE.ANY([]).[],condition=true,joinType=inner),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#39011:Subset#10.LOGICAL.ANY([]).[], best=null, importance=0.531441
>
> rel#39012:AbstractConverter.LOGICAL.ANY([]).[](child=rel#38958:Subset#10.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39055:DrillJoinRel.LOGICAL.ANY([]).[](left=rel#39047:Subset#16.LOGICAL.ANY([]).[],right=rel#39053:Subset#14.LOGICAL.ANY([]).[],condition=true,joinType=inner),
> rowcount=252898.0, cumulative cost={inf}
>
> rel#39057:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#38984:Subset#3.LOGICAL.ANY([]).[],name=$1,average_stars=$2,name0=$3),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> Set#11, type: RecordType(ANY name, ANY average_stars, ANY name0)
> rel#38960:Subset#11.NONE.ANY([]).[], best=null, importance=0.6561
>
> rel#38959:FilterRel.NONE.ANY([]).[](child=rel#38958:Subset#10.NONE.ANY([]).[],condition==($0,
> $1)), rowcount=2.6965397022934733E307, cumulative cost={inf}
>
> rel#38966:ProjectRel.NONE.ANY([]).[](child=rel#38928:Subset#4.NONE.ANY([]).[],name=$1,average_stars=$2,name0=$3),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39002:JoinRel.NONE.ANY([]).[](left=rel#39000:Subset#13.NONE.ANY([]).[],right=rel#39001:Subset#14.NONE.ANY([]).[],condition=true,joinType=inner),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
> rel#38976:Subset#11.LOGICAL.ANY([]).[], best=null,
> importance=0.5904900000000001
>
> rel#38977:AbstractConverter.LOGICAL.ANY([]).[](child=rel#38960:Subset#11.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#38975:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#38973:Subset#4.LOGICAL.ANY([]).[],name=$1,average_stars=$2,name0=$3),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39013:DrillFilterRel.LOGICAL.ANY([]).[](child=rel#39011:Subset#10.LOGICAL.ANY([]).[],condition==($0,
> $1)), rowcount=2.6965397022934733E307, cumulative cost={inf}
>
> rel#39071:DrillJoinRel.LOGICAL.ANY([]).[](left=rel#39051:Subset#13.LOGICAL.ANY([]).[],right=rel#39053:Subset#14.LOGICAL.ANY([]).[],condition=true,joinType=inner),
> rowcount=37934.7, cumulative cost={inf}
> Set#12, type: (DrillRecordRow[*, name, average_stars])
> rel#38994:Subset#12.NONE.ANY([]).[], best=null,
> importance=0.5904900000000001
>
> rel#38991:FilterRel.NONE.ANY([]).[](child=rel#38921:Subset#0.ENUMERABLE.ANY([]).[],condition==($1,
> $2)), rowcount=15.0, cumulative cost={inf}
> rel#39035:Subset#12.LOGICAL.ANY([]).[], best=rel#39056,
> importance=0.4782969000000001
>
> rel#39036:AbstractConverter.LOGICAL.ANY([]).[](child=rel#38994:Subset#12.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39056:DrillFilterRel.LOGICAL.ANY([]).[](child=rel#38978:Subset#0.LOGICAL.ANY([]).[],condition==($1,
> $2)), rowcount=37934.7, cumulative cost={505796.0 rows, 2.529991592E9 cpu,
> 0.0 io, 0.0 network, 0.0 memory}
> Set#13, type: RecordType(ANY name, ANY average_stars)
> rel#39000:Subset#13.NONE.ANY([]).[], best=null,
> importance=0.5904900000000001
>
> rel#38996:ProjectRel.NONE.ANY([]).[](child=rel#38994:Subset#12.NONE.ANY([]).[],name=$1,average_stars=$2),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39019:FilterRel.NONE.ANY([]).[](child=rel#39017:Subset#16.NONE.ANY([]).[],condition==($0,
> $1)), rowcount=2.6965397022934733E307, cumulative cost={inf}
> rel#39051:Subset#13.LOGICAL.ANY([]).[], best=rel#39050,
> importance=0.531441
>
> rel#39052:AbstractConverter.LOGICAL.ANY([]).[](child=rel#39000:Subset#13.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39050:DrillFilterRel.LOGICAL.ANY([]).[](child=rel#39047:Subset#16.LOGICAL.ANY([]).[],condition==($0,
> $1)), rowcount=37934.7, cumulative cost={758694.0 rows, 1517396.0 cpu, 0.0
> io, 0.0 network, 0.0 memory}
>
> rel#39074:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#39035:Subset#12.LOGICAL.ANY([]).[],name=$1,average_stars=$2),
> rowcount=37934.7, cumulative cost={543730.7 rows, 2.5299916E9 cpu, 0.0 io,
> 0.0 network, 0.0 memory}
> Set#14, type: RecordType(ANY name)
> rel#39001:Subset#14.NONE.ANY([]).[], best=null, importance=0.531441
>
> rel#38997:ProjectRel.NONE.ANY([]).[](child=rel#38924:Subset#2.NONE.ANY([]).[],name=$0),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39049:ProjectRel.NONE.ANY([]).[](child=rel#38922:Subset#1.ENUMERABLE.ANY([]).[],name=ITEM($1,
> 0)), rowcount=100.0, cumulative cost={inf}
> rel#39053:Subset#14.LOGICAL.ANY([]).[], best=rel#39063,
> importance=0.4782969000000001
>
> rel#39054:AbstractConverter.LOGICAL.ANY([]).[](child=rel#39001:Subset#14.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39063:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#39062:Subset#20.LOGICAL.ANY([]).[],name=ITEM($0,
> 0)), rowcount=5710.0, cumulative cost={11420.0 rows, 5714.0 cpu, 0.0 io, 0.0
> network, 0.0 memory}
>
> rel#39070:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#39067:Subset#1.LOGICAL.ANY([]).[],name=ITEM($1,
> 0)), rowcount=5710.0, cumulative cost={11420.0 rows, 5.7100004E7 cpu, 0.0
> io, 0.0 network, 0.0 memory}
>
> rel#39073:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#38981:Subset#2.LOGICAL.ANY([]).[],name=$0),
> rowcount=5710.0, cumulative cost={17130.0 rows, 5722.0 cpu, 0.0 io, 0.0
> network, 0.0 memory}
> Set#16, type: RecordType(ANY name, ANY average_stars)
> rel#39017:Subset#16.NONE.ANY([]).[], best=null, importance=0.531441
>
> rel#39014:ProjectRel.NONE.ANY([]).[](child=rel#38921:Subset#0.ENUMERABLE.ANY([]).[],name=$1,average_stars=$2),
> rowcount=100.0, cumulative cost={inf}
> rel#39047:Subset#16.LOGICAL.ANY([]).[], best=rel#39046,
> importance=0.4782969000000001
>
> rel#39048:AbstractConverter.LOGICAL.ANY([]).[](child=rel#39017:Subset#16.NONE.ANY([]).[],convention=LOGICAL,DrillDistributionTraitDef=ANY([]),sort=[]),
> rowcount=1.7976931348623157E308, cumulative cost={inf}
>
> rel#39046:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#39045:Subset#19.LOGICAL.ANY([]).[],name=$1,average_stars=$0),
> rowcount=252898.0, cumulative cost={505796.0 rows, 505804.0 cpu, 0.0 io, 0.0
> network, 0.0 memory}
>
> rel#39072:DrillProjectRel.LOGICAL.ANY([]).[](child=rel#38978:Subset#0.LOGICAL.ANY([]).[],name=$1,average_stars=$2),
> rowcount=252898.0, cumulative cost={505796.0 rows, 2.528980008E9 cpu, 0.0
> io, 0.0 network, 0.0 memory}
> Set#18, type: RecordType(ANY columns)
> rel#39032:Subset#18.LOGICAL.ANY([]).[], best=rel#39030,
> importance=0.4304672100000001
> rel#39030:DrillScanRel.LOGICAL.ANY([]).[](table=[dfs, mydata,
> names.csv],groupscan=EasyGroupScan
> [selectionRoot=/Users/tshiran/Development/data/names.csv, numFiles=1, columns
> = [SchemaPath [`columns`[0]], SchemaPath [`columns`[4]]]]), rowcount=5710.0,
> cumulative cost={5710.0 rows, 5710.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
> Set#19, type: RecordType(ANY average_stars, ANY name)
> rel#39045:Subset#19.LOGICAL.ANY([]).[], best=rel#39043,
> importance=0.4304672100000001
> rel#39043:DrillScanRel.LOGICAL.ANY([]).[](table=[mongo, yelp,
> users],groupscan=MongoGroupScan [MongoScanSpec=MongoScanSpec [dbName=yelp,
> collectionName=users, filters=null], columns=[SchemaPath [`name`], SchemaPath
> [`average_stars`]]]), rowcount=252898.0, cumulative cost={252898.0 rows,
> 505796.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
> Set#20, type: RecordType(ANY columns)
> rel#39062:Subset#20.LOGICAL.ANY([]).[], best=rel#39060,
> importance=0.4304672100000001
> rel#39060:DrillScanRel.LOGICAL.ANY([]).[](table=[dfs, mydata,
> names.csv],groupscan=EasyGroupScan
> [selectionRoot=/Users/tshiran/Development/data/names.csv, numFiles=1, columns
> = [SchemaPath [`columns`[0]]]]), rowcount=5710.0, cumulative cost={5710.0
> rows, 5710.0 cpu, 0.0 io, 0.0 network, 0.0 memory}
> [43217377-548e-4d8c-8468-e0ff909e768a]
> 0: jdbc:drill:zk=local>
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)