MongoDB Documentation, Release 3.0.4 See New Write Operation Protocol (page 852) for the changes to the write operation protocol, and Insert and Update Improvements (page 851) for the changes to the insert and update operations. Also consider the documentation of the Restrictions on Field Names . Description Queries cannot specify conditions on fields with names that start with a dollar sign ( $ ). Solution Unset or rename existing fields whose names start with a dollar sign ( $ ). Run db.upgradeCheckAllDBs() to find fields whose names start with a dollar sign. Description If a sparse index (page 505) results in an incomplete result set for queries and sort operations, MongoDB will not use that index unless a hint() explicitly specifies the index. Solution To override the behavior to use the sparse index and return incomplete results, explicitly specify the index with a hint() . For example, the query { x: { $exists: false } } will no longer use a sparse index on the x field, unless explicitly hinted. Query and Sort Changes Enforce Field Name Restrictions Sparse Index and Incomplete Results sort() Specification Values See Sparse Index On A Collection Cannot Return Complete Results (page 506) for an example that details the new behavior. Any other value will result in an error. Previous versions also accepted either true or false for ascending. Previous versions ignored skip() when performing an equality match on the _id field. In previous versions, explain() would have the side effect of clearing the query plan cache for that query shape. The PlanCache() reference. explain() Retains Query Plan Cache skip() and _id Queries Description Equality match on the _id field obeys skip() . Solution Update sort key values that use true or false to 1 . Description explain() no longer clears the query plans (page 68) cached for that query shape . See also: • 1 to specify ascending order for a field, • -1 to specify descending order for a field, or • $meta expression to specify sort by the text search score. Description The sort() method only accepts the following values for the sort keys: Chapter 12. Release Notes 862