Skip to content

[Spring Data MongoDB 4.2.0] MongoTemplate using incorrect nested fields order #4585

Closed as not planned
@infoShare

Description

@infoShare

When using MongoTemplate.find(...) order of the nested fields is not preserved. This might be problematic if full objects search is used (for example for indexed complex fields).

Below you can find JUnit with this issue highlighted.

Failing as query for Mongodb is:
{ "nested" : { "checkName" : "B", "checkVersion" : "1", "systemName" : "A" } }
instead of
{ "nested" : { "systemName" : "A", "checkName" : "B", "checkVersion" : "1" } }
on MongoTemplate.doFind() on line: Document mappedQuery = queryContext.getMappedQuery(entity);

https://github.com/infoShare/code-examples/blob/main/spring-data-mongodb-order/src/test/java/infoshare/springdatamongodborder/SpringDataMongodbOrderTests.java

It is working properly on spring-data-mongodb:4.1.5

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions