You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Rahul Challapalli (JIRA)" <ji...@apache.org> on 2015/05/07 00:26:00 UTC
[jira] [Closed] (DRILL-1607) Unable to use Flatten with sum/avg
aggregate functions
[ https://issues.apache.org/jira/browse/DRILL-1607?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rahul Challapalli closed DRILL-1607.
------------------------------------
Verified and added the below testcase
Functional/Passing/flatten_operators/general/non-flatten-q7_DRILL-1607.q
> Unable to use Flatten with sum/avg aggregate functions
> ------------------------------------------------------
>
> Key: DRILL-1607
> URL: https://issues.apache.org/jira/browse/DRILL-1607
> Project: Apache Drill
> Issue Type: Bug
> Reporter: Neeraja
> Assignee: Jason Altekruse
> Fix For: 0.7.0
>
>
> Unable to use flatten with arithmetic aggregations such as sum, avg. count, min, max and plain listing of fields work.
> 0: jdbc:drill:zk=local> select c.f.name, c.f.gender,c.f.age from
> . . . . . . . . . . . > (select flatten(children) as f from dfs.`/Users/nrentachintala/Downloads/drillreleases/apache-drill-0.7.0-incubating-SNAPSHOT/sample-data/test.json`) c;
> +------------+------------+------------+
> | EXPR$0 | EXPR$1 | EXPR$2 |
> +------------+------------+------------+
> | Jane | Female | 6 |
> | John | Male | 15 |
> | Earl | Male | 10 |
> | Sam | Male | 6 |
> | Kit | Male | 8 |
> +------------+------------+------------+
> 5 rows selected (0.271 seconds)
> 0: jdbc:drill:zk=local>
> 0: jdbc:drill:zk=local> select count(*) from
> . . . . . . . . . . . > (select flatten(children) as f from dfs.`/Users/nrentachintala/Downloads/drillreleases/apache-drill-0.7.0-incubating-SNAPSHOT/sample-data/test.json`) c;
> +------------+
> | EXPR$0 |
> +------------+
> | 5 |
> +------------+
> 1 row selected (0.219 seconds)
> 0: jdbc:drill:zk=local>
> 0: jdbc:drill:zk=local>
> 0: jdbc:drill:zk=local> select avg(c.f.age) from
> . . . . . . . . . . . > (select flatten(children) as f from dfs.`/Users/nrentachintala/Downloads/drillreleases/apache-drill-0.7.0-incubating-SNAPSHOT/sample-data/test.json`) c
> . . . . . . . . . . . > ;
> +------------+
> | EXPR$0 |
> +------------+
> Query failed: Failure while running fragment.
> java.lang.RuntimeException: java.sql.SQLException: Failure while executing query.
> at sqlline.SqlLine$IncrementalRows.hasNext(SqlLine.java:2514)
> at sqlline.SqlLine$TableOutputFormat.print(SqlLine.java:2148)
> at sqlline.SqlLine.print(SqlLine.java:1809)
> at sqlline.SqlLine$Commands.execute(SqlLine.java:3766)
> at sqlline.SqlLine$Commands.sql(SqlLine.java:3663)
> at sqlline.SqlLine.dispatch(SqlLine.java:889)
> at sqlline.SqlLine.begin(SqlLine.java:763)
> at sqlline.SqlLine.start(SqlLine.java:498)
> at sqlline.SqlLine.main(SqlLine.java:460)
> JSON file used is below:
> {"kind": "person", "fullName": "John Doe", "age": 22, "gender": "Male", "phoneNumber": { "areaCode": "206", "number": "1234567"}, "children": [{ "name": "Jane", "gender": "Female", "age": "6"}, {"name": "John", "gender": "Male", "age": "15"}], "citiesLived": [{ "place": "Seattle", "yearsLived": ["1995"]}, {"place": "Stockholm", "yearsLived": ["2005"]}]}
> {"kind": "person", "fullName": "Mike Jones", "age": 35, "gender": "Male", "phoneNumber": { "areaCode": "622", "number": "1567845"}, "children": [{ "name": "Earl", "gender": "Male", "age": "10"}, {"name": "Sam", "gender": "Male", "age": "6"}, { "name": "Kit", "gender": "Male", "age": "8"}], "citiesLived": [{"place": "Los Angeles", "yearsLived": ["1989", "1993", "1998", "2002"]}, {"place": "Washington DC", "yearsLived": ["1990", "1993", "1998", "2008"]}, {"place": "Portland", "yearsLived": ["1993", "1998", "2003", "2005"]}, {"place": "Austin", "yearsLived": ["1973", "1998", "2001", "2005"]}]}
> {"kind": "person", "fullName": "Anna Karenina", "age": 45, "gender": "Female", "phoneNumber": { "areaCode": "425", "number": "1984783"}, "citiesLived": [{"place": "Stockholm", "yearsLived": ["1992", "1998", "2000", "2010"]}, {"place": "Russia", "yearsLived": ["1998", "2001", "2005"]}, {"place": "Austin", "yearsLived": ["1995", "1999"]}]}
> Explain plan for the avg query is below.
> 0: jdbc:drill:zk=local> explain plan for select avg(c.f.age) from
> . . . . . . . . . . . > (select flatten(children) as f from dfs.`/Users/nrentachintala/Downloads/drillreleases/apache-drill-0.7.0-incubating-SNAPSHOT/sample-data/test.json`) c
> . . . . . . . . . . . > ;
> +------------+------------+
> | text | json |
> +------------+------------+
> | 00-00 Screen
> 00-01 Project(EXPR$0=[CAST(/(CastHigh(CASE(=($1, 0), null, $0)), $1)):ANY])
> 00-02 StreamAgg(group=[{}], agg#0=[$SUM0($0)], agg#1=[COUNT()])
> 00-03 |
> +------------+------------+
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)