[SERVER-84794] $geoWithin queries have missing results when location field has extra sub-fields Created: 11/Jan/24 Updated: 02/Feb/24 |
|
| Status: | Open |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Will Buerger | Assignee: | Backlog - Query Integration |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | qi-geo | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Assigned Teams: |
Query Integration
|
| Operating System: | ALL |
| Steps To Reproduce: | // Insert identical documents with different field orders replset [direct: primary] test> db.test.find() }, }, }, }, }, } replset [direct: primary] test> db.test.find({ $or: [{ "be": { $geoWithin: { $centerSphere: [[179.03531532305314, 0.7050703681776871], 2.145221550434281] } } }] }) }, }, }, } |
| Participants: |
| Description |
|
When working with GeoJSON data, we expect location fields to be one sub-object with a "type" and "coordinates" field. When there's an extra field in the field's sub-object, some $geoWithin queries miss matching documents. See reproducing steps for more details. |