[
https://issues.apache.org/jira/browse/CALCITE-6026?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dmitry Sysolyatin resolved CALCITE-6026.
----------------------------------------
Fix Version/s: 1.36.0
Resolution: Fixed
Fixed in
[{{683e4ae}}|https://github.com/apache/calcite/commit/683e4ae24238b2ea852d6e3d796571667c569b86].
Thanks for PR [~tnieradzik]!
> MongoDB: Column is not quoted in "order by" clause and throws
> JsonParseException
> --------------------------------------------------------------------------------
>
> Key: CALCITE-6026
> URL: https://issues.apache.org/jira/browse/CALCITE-6026
> Project: Calcite
> Issue Type: Bug
> Components: mongodb-adapter
> Reporter: Tim Nieradzik
> Assignee: Tim Nieradzik
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.36.0
>
>
> The following query fails with a JsonParseException:
> {code:java}
> select state as "STATE", avg(pop) as "AVG(pop)"
> from zips
> group by "STATE"
> order by "AVG(pop)" {code}
>
> Stack trace:
>
> {code:java}
> org.bson.json.JsonParseException: JSON reader was expecting ':' but found '('.
> at org.bson.json.JsonReader.readBsonType(JsonReader.java:150)
> at org.bson.codecs.BsonDocumentCodec.decode(BsonDocumentCodec.java:85)
> at org.bson.codecs.BsonDocumentCodec.decode(BsonDocumentCodec.java:42)
> at
> org.bson.codecs.BsonDocumentCodec.readValue(BsonDocumentCodec.java:104)
> at org.bson.codecs.BsonDocumentCodec.decode(BsonDocumentCodec.java:87)
> at org.bson.BsonDocument.parse(BsonDocument.java:66)
> at
> org.apache.calcite.adapter.mongodb.MongoTable.aggregate(MongoTable.java:138)
> at
> org.apache.calcite.adapter.mongodb.MongoTable.access$200(MongoTable.java:53)
> at
> org.apache.calcite.adapter.mongodb.MongoTable$MongoQueryable.aggregate(MongoTable.java:189)
> {code}
>
> This is caused by the column name in the "order by" clause not being escaped.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)