ZheHu created CALCITE-4985: ------------------------------ Summary: Elasticsearch Adapter fails to execute a prepared statement Key: CALCITE-4985 URL: https://issues.apache.org/jira/browse/CALCITE-4985 Project: Calcite Issue Type: Bug Components: elasticsearch-adapter Affects Versions: 1.29.0 Reporter: ZheHu Assignee: ZheHu
When running the following test in AggregationTest: {code:java} @Test void testPrepare() { String sql = "select * from view where cat5=?"; CalciteAssert.that() .with(newConnectionFactory()) .query(sql) .consumesPreparedStatement(p -> p.setInt(1, 1)) .returns("a"); } {code} I got such exception: {code:java} Suppressed: org.apache.calcite.adapter.elasticsearch.PredicateAnalyzer$PredicateAnalyzerException: Unexpected combination of expressions [left: org.apache.calcite.adapter.elasticsearch.PredicateAnalyzer$NamedFieldExpression@4a325e09] [right: null] org.apache.calcite.adapter.elasticsearch.PredicateAnalyzer$Visitor.swap(PredicateAnalyzer.java:506) org.apache.calcite.adapter.elasticsearch.PredicateAnalyzer$Visitor.binary(PredicateAnalyzer.java:353) org.apache.calcite.adapter.elasticsearch.PredicateAnalyzer$Visitor.visitCall(PredicateAnalyzer.java:243) org.apache.calcite.adapter.elasticsearch.PredicateAnalyzer$Visitor.visitCall(PredicateAnalyzer.java:127) org.apache.calcite.rex.RexCall.accept(RexCall.java:189) org.apache.calcite.adapter.elasticsearch.PredicateAnalyzer.analyze(PredicateAnalyzer.java:112) org.apache.calcite.adapter.elasticsearch.ElasticsearchFilter$PredicateAnalyzerTranslator.translateMatch(ElasticsearchFilter.java:102) org.apache.calcite.adapter.elasticsearch.ElasticsearchFilter.implement(ElasticsearchFilter.java:67) org.apache.calcite.adapter.elasticsearch.ElasticsearchRel$Implementor.visitChild(ElasticsearchRel.java:129) org.apache.calcite.adapter.elasticsearch.ElasticsearchProject.implement(ElasticsearchProject.java:62) org.apache.calcite.adapter.elasticsearch.ElasticsearchRel$Implementor.visitChild(ElasticsearchRel.java:129) org.apache.calcite.adapter.elasticsearch.ElasticsearchToEnumerableConverter.implement(ElasticsearchToEnumerableConverter.java:67) org.apache.calcite.adapter.enumerable.EnumerableRelImplementor.implementRoot(EnumerableRelImplementor.java:111) {code} Useful reference in JDBC Adapter: see https://issues.apache.org/jira/browse/CALCITE-563 -- This message was sent by Atlassian Jira (v8.20.1#820001)