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

Yingyi Bu commented on ASTERIXDB-1580:
--------------------------------------

[~vignesh.raghunathan], for the having clause:

having coll_count((select value a from stategrp)) >= 10

Please use:
having coll_count((select value *stategrp.a* from stategrp)) >= 10 
or
"having count(a) >= 10"

The way you expressed caused a materialization of the value "a" which is an 
ordered list, because after the group by clause, "a" is a syntactic sugar of 
*(select value stategrp.a from stategrp)*.



> Subquery in having clause throws ArrayIndexOutOfBoundsException
> ---------------------------------------------------------------
>
>                 Key: ASTERIXDB-1580
>                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-1580
>             Project: Apache AsterixDB
>          Issue Type: Bug
>            Reporter: Vignesh Raghunathan
>            Assignee: Yingyi Bu
>         Attachments: logs.zip
>
>
> The following sqlpp query throws an ArrayIndexOutOfBoundsException
> {code}
> use tpcds;
> select  a.ca_state state, count(a) cnt
>  from customer_address a
>      ,customer c
>      ,store_sales s
>      ,date_dim d
>      ,item i
>  where  a.ca_address_sk = c.c_current_addr_sk
>       and c.c_customer_sk = s.ss_customer_sk
>       and s.ss_sold_date_sk = d.d_date_sk
>       and s.ss_item_sk = i.i_item_sk
>  group by a.ca_state group as stategrp
>  having coll_count((select value a from stategrp)) >= 10
>  order by cnt
>  limit 100;
> {code}
> tpcdsq6.zip contains the schema and data for the datasets used in the query



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

Reply via email to