[SERVER-5354] don't create field range for $atomic Created: 22/Mar/12  Updated: 11/Jul/16  Resolved: 06/Sep/12

Status: Closed
Project: Core Server
Component/s: Querying
Affects Version/s: None
Fix Version/s: 2.3.0

Type: Bug Priority: Major - P3
Reporter: Aaron Staple Assignee: Aaron Staple
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Operating System: ALL
Participants:

 Description   

The queryutil code doesn't know about $atomic, so an operation with the query

{ a:1, $atomic:true }

will be treated in queryutil like

{ a:1, b:1 }

. Because of the extra field, the query optimizer won't create an optimal plan on index

{ a:1 }

and will instead try both

{ a:1 }

and

{ $natural:1 }

.



 Comments   
Comment by auto [ 06/Sep/12 ]

Author:

{u'date': u'2012-09-06T11:54:44-07:00', u'name': u'Aaron', u'email': u'aaron@10gen.com'}

Message: SERVER-5354 Disable queryoptimizerc multi version testing.
Branch: master
https://github.com/mongodb/mongo/commit/736cfe4115bd96ae909612ab65f9d13eba6acbe3

Comment by auto [ 06/Sep/12 ]

Author:

{u'date': u'2012-09-02T15:34:09-07:00', u'email': u'aaron@10gen.com', u'name': u'Aaron'}

Message: SERVER-5354 Do not generate a field range constraint for an $atomic match field.
Branch: master
https://github.com/mongodb/mongo/commit/29e1815c4551f066a6d40c212941f2a9edccba20

Generated at Thu Feb 08 03:08:38 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.