You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Vova Vysotskyi (Jira)" <ji...@apache.org> on 2020/12/21 19:30:00 UTC

[jira] [Created] (CALCITE-4444) Elasticsearch adapter fails for ES 6 if query contains aggregations

Vova Vysotskyi created CALCITE-4444:
---------------------------------------

             Summary: Elasticsearch adapter fails for ES 6 if query contains aggregations
                 Key: CALCITE-4444
                 URL: https://issues.apache.org/jira/browse/CALCITE-4444
             Project: Calcite
          Issue Type: Bug
    Affects Versions: 1.26.0
            Reporter: Vova Vysotskyi


Queries like this one:
{code:sql}
select distinct _MAP['a'] from "elastic"."nested"
{code}

Fails with the following error for the case when using ElasticSearch 6:
{noformat}
Error: Error while executing SQL "select distinct _MAP['a'] from "elastic"."nested"": Field a not defined for nested (state=,code=0)
java.sql.SQLException: Error while executing SQL "select distinct _MAP['a'] from "elastic"."nested"": Field a not defined for employee
        at org.apache.calcite.avatica.Helper.createException(Helper.java:56)
        at org.apache.calcite.avatica.Helper.createException(Helper.java:41)
        at org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:163)
        at org.apache.calcite.avatica.AvaticaStatement.execute(AvaticaStatement.java:217)
        at sqlline.Commands.executeSingleQuery(Commands.java:1054)
        at sqlline.Commands.execute(Commands.java:1003)
        at sqlline.Commands.sql(Commands.java:967)
        at sqlline.SqlLine.dispatch(SqlLine.java:734)
        at sqlline.SqlLine.begin(SqlLine.java:541)
        at sqlline.SqlLine.start(SqlLine.java:267)
        at sqlline.SqlLine.main(SqlLine.java:206)
Caused by: java.lang.IllegalArgumentException: Field a not defined for nested
        at org.apache.calcite.adapter.elasticsearch.ElasticsearchMapping.missingValueFor(ElasticsearchMapping.java:85)
        at org.apache.calcite.adapter.elasticsearch.ElasticsearchTable.aggregate(ElasticsearchTable.java:217)
        at org.apache.calcite.adapter.elasticsearch.ElasticsearchTable.find(ElasticsearchTable.java:119)
        at org.apache.calcite.adapter.elasticsearch.ElasticsearchTable.access$000(ElasticsearchTable.java:61)
        at org.apache.calcite.adapter.elasticsearch.ElasticsearchTable$ElasticsearchQueryable.find(ElasticsearchTable.java:366)
        at Baz.bind(Unknown Source)
        at org.apache.calcite.jdbc.CalcitePrepare$CalciteSignature.enumerable(CalcitePrepare.java:363)
        at org.apache.calcite.jdbc.CalciteConnectionImpl.enumerable(CalciteConnectionImpl.java:320)
        at org.apache.calcite.jdbc.CalciteMetaImpl._createIterable(CalciteMetaImpl.java:517)
        at org.apache.calcite.jdbc.CalciteMetaImpl.createIterable(CalciteMetaImpl.java:508)
        at org.apache.calcite.avatica.AvaticaResultSet.execute(AvaticaResultSet.java:182)
        at org.apache.calcite.jdbc.CalciteResultSet.execute(CalciteResultSet.java:64)
        at org.apache.calcite.jdbc.CalciteResultSet.execute(CalciteResultSet.java:43)
        at org.apache.calcite.avatica.AvaticaConnection$1.execute(AvaticaConnection.java:667)
        at org.apache.calcite.jdbc.CalciteMetaImpl.prepareAndExecute(CalciteMetaImpl.java:577)
        at org.apache.calcite.avatica.AvaticaConnection.prepareAndExecuteInternal(AvaticaConnection.java:675)
        at org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:156)
        ... 8 more

{noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)