[ https://issues.apache.org/jira/browse/CALCITE-3120?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16858788#comment-16858788 ]
Stamatis Zampetakis commented on CALCITE-3120: ---------------------------------------------- I have the impression that performing the sort on state before or after the projection is not really a problem so the verification of the test should be made differently. On the other hand I am not familiar at all with Mongo pipelines so any tips are appreciated. Maybe [~sereda] has some inspiration :) > MongoAdapterTest.testGroupByAvgSumCount fails due the order of sort query > ------------------------------------------------------------------------- > > Key: CALCITE-3120 > URL: https://issues.apache.org/jira/browse/CALCITE-3120 > Project: Calcite > Issue Type: Bug > Components: mongodb-adapter > Affects Versions: 1.19.0 > Reporter: Stamatis Zampetakis > Assignee: Stamatis Zampetakis > Priority: Major > > The MongoAdapterTest.testGroupByAvgSumCount fails because $sort operator does > not appear at the middle of the query but in the end. > {noformat} > org.junit.ComparisonFailure: > expected and actual Mongo queries (pipelines) do not match > expected:<...$project" : { > "[POP" : "$pop", > "STATE" : "$state" > } > } > { > "$group" : { > "_id" : "$STATE", > "_1" : { > "$sum" : "$POP" > }, > "_2" : { > "$sum" : { > "$cond" : [{ > "$eq" : ["POP", null] > }, 0, 1] > } > } > } > } > { > "$project" : { > "STATE" : "$_id", > "_1" : "$_1", > "_2" : "$_2" > } > } > { > "$sort" : { > "STATE" : 1 > } > } > { > "$project" : { > "STATE" : 1, > "A" : { > "$divide" : [{ > "$cond" : [{ > "$eq" : ["$_2", { > "$literal" : 0 > }] > }, null, "$_1"] > }, "$_2"] > }, > "S" : { > "$cond" : [{ > "$eq" : ["$_2", { > "$literal" : 0 > }] > }, null, "$_1"] > }, > "C" : "$_2"] > } > }> but was:<...$project" : { > "[STATE" : "$state", > "POP" : "$pop" > } > } > { > "$group" : { > "_id" : "$STATE", > "_1" : { > "$sum" : "$POP" > }, > "_2" : { > "$sum" : { > "$cond" : [{ > "$eq" : ["POP", null] > }, 0, 1] > } > } > } > } > { > "$project" : { > "STATE" : "$_id", > "_1" : "$_1", > "_2" : "$_2" > } > } > { > "$project" : { > "STATE" : 1, > "A" : { > "$divide" : [{ > "$cond" : [{ > "$eq" : ["$_2", { > "$literal" : 0 > }] > }, null, "$_1"] > }, "$_2"] > }, > "S" : { > "$cond" : [{ > "$eq" : ["$_2", { > "$literal" : 0 > }] > }, null, "$_1"] > }, > "C" : "$_2" > } > } > { > "$sort" : { > "STATE" : 1] > } > }> > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)