Release Notes for MongoDB 2.6

April 8, 2014

MongoDB 2.6 is now available. Key features include aggregationenhancements, text-search integration, query-engine improvements, a newwrite-operation protocol, and security enhancements.

Minor Releases

2.6.12 – Mar 24, 2016

  • Fixed issue with MMAPv1 journaling where the “last sequence number”file (lsn file) may be ahead of what is synced to the data files:SERVER-22261.
  • Fixed issue that permitted the creation of new role with the samename as a built-in role:SERVER-19284.
  • Fixed issue where some index operations running during an active migrationmay cause the migration operation to skip some documents:SERVER-22535.
  • All issues closed in 2.6.12

2.6.11 – Aug 12, 2015

2.6.10 – May 19, 2015

2.6.9 – March 24, 2015

2.6.8 – February 25, 2015

2.6.7 – January 13, 2015

2.6.6 – December 09, 2014

2.6.5 – October 07, 2014

2.6.4 – August 11, 2014

  • Fix for text index where under specific circumstances, in-placeupdates to a text-indexed field may result inincorrect/incomplete results SERVER-14738
  • Check the size of the split point before performing a manual splitchunk operation SERVER-14431
  • Ensure read preferences are re-evaluated by drawing secondaryconnections from a global pool and releasing back to the pool at theend of a query/command SERVER-9788
  • Allow read from secondaries when both audit and authorization areenabled in a sharded cluster SERVER-14170
  • All issues closed in 2.6.4

2.6.3 – June 19, 2014

2.6.2 – June 16, 2014

2.6.1 – May 5, 2014

Major Changes

The following changes in MongoDB affect both the standard and Enterpriseeditions:

Aggregation Enhancements

The aggregation pipeline adds the ability to return result sets of anysize, either by returning a cursor or writing the output toa collection. Additionally, the aggregation pipeline supportsvariables and adds new operations to handle sets and redact data.

  • The db.collection.aggregate() now returns a cursor, whichenables the aggregation pipeline to return result sets of any size.
  • Aggregation pipelines now support an explain operation to aidanalysis of aggregation operations.
  • Aggregation can now use a more efficient external-disk-based sortingprocess.
  • New pipeline stages:
    • $out stage to output to a collection.
    • $redact stage to allow additional control to accessingthe data.
  • New or modified operators:

Text Search Integration

Text search is now enabled by default, and the query system, includingthe aggregation pipeline $match stage, includes the$text operator, which resolves text-search queries.

MongoDB 2.6 includes an updated text index format and deprecates the textcommand.

Insert and Update Improvements

Improvements to the update and insert systems include additionaloperations and improvements that increase consistency of modifieddata.

  • MongoDB preserves the order of the document fields following writeoperations except for the following cases:
    • The _id field is always the first field in the document.
    • Updates that include renaming of field names mayresult in the reordering of fields in the document.
  • New or enhanced update operators:
    • $bit operator supports bitwise xor operation.
    • $min and $max operators that performconditional update depending on the relative size of the specifiedvalue and the current value of a field.
    • $push operator has enhanced support for the$sort, $slice, and $each modifiersand supports a new $position modifier.
    • $currentDate operator to set the value of a field to thecurrent date.
  • The $mul operator for multiplicative increments for insertand update operations.

See also

Update Operator Syntax Validation

New Write Operation Protocol

A new write protocol integrates write operations withwrite concerns. The protocol also provides improvedsupport for bulk operations.

MongoDB 2.6 adds the write commands insert,update, and delete, which provide the basisfor the improved bulk insert. All officially supported MongoDB driverssupport the new write commands.

The mongo shell now includesmethods to perform bulk-write operations. See Bulk() formore information.

See also

Write Method Acknowledgements

MSI Package for MongoDB Available for Windows

MongoDB now distributes MSI packages for Microsoft Windows. This is therecommended method for MongoDB installation under Windows.

Security Improvements

MongoDB 2.6 enhances support for secure deployments through improved SSLsupport, x.509-based authentication, an improved authorization systemwith more granular controls, as well as centralized credential storage, andimproved user management tools.

Specifically these changes include:

  • A new authorization model that provides theability to create custom User-Defined Roles and the ability tospecify user privileges at a collection-level granularity.
  • Global user management, which stores all user anduser-defined role data in the admin database and provides a newset of commands for managing users and roles.
  • x.509 certificate authentication for client authentication as well as forinternal authentication of sharded cluster and/orreplica set members. x.509 authentication is only availablefor deployments using SSL.
  • Enhanced SSL Support:
  • MongoDB disables the http interface by default, limitingnetwork exposure. To enable theinterface, see enabled.

See also

New Authorization Model,SSL Certificate Hostname Validation,and Security Checklist.

Query Engine Improvements

Improvements

Geospatial Enhancements

See also

2dsphere Index Version 2,$maxDistance Changes,Deprecated $uniqueDocs,Stronger Validation of Geospatial Queries

Index Build Enhancements

  • Background index build allowed onsecondaries. If you initiate a background index build on aprimary, the secondaries will replicate the index build inthe background.

  • Automatic rebuild of interrupted index builds after a restart.

    • If a standalone or a primary instance terminates during an indexbuild without a clean shutdown, mongod now restartsthe index build when the instance restarts. If the instance shutsdown cleanly or if a user kills the index build, the interruptedindex builds do not automatically restart upon the restart of theserver.
    • If a secondary instance terminates during an index build, themongod instance will now restart the interrupted indexbuild when the instance restarts.To disable this behavior, use the —noIndexBuildRetrycommand-line option.
  • ensureIndex() now wraps a newcreateIndex command.

  • The dropDups option to ensureIndex()and createIndex is deprecated.

See also

Enforce Index Key Length Limit

Enhanced Sharding and Replication Administration

Configuration Options YAML File Format

MongoDB 2.6 supports a YAML-based configuration file format in additionto the previous configuration file format. See the documentation ofthe Configuration File formore information.

Operational Changes

Storage

usePowerOf2Sizes is now the default allocation strategy forall new collections. The new allocation strategy uses more storagerelative to total document size but results in lower levels ofstorage fragmentation and more predictable storage capacity planningover time.

To use the previous exact-fit allocation strategy:

  • For a specific collection, use collMod withusePowerOf2Sizes set to false.

  • For all new collections on an entire mongod instance,set newCollectionsUsePowerOf2Sizes to false.

New collections include those: created duringinitial sync, as well as thosecreated by the mongorestore and mongoimporttools, by running mongod with the —repair option, as well as therestoreDatabase command.

See /core/storage for more information about MongoDB’s storage system.

Networking

  • Removed upward limit for the maxIncomingConnections for mongodand mongos. Previous versions capped the maximum possiblemaxIncomingConnections setting at 20,000 connections.
  • Connection pools for a mongos instance may be used by multipleMongoDB servers. This can reduce the number of connections neededfor high-volume workloads and reduce resource consumption insharded clusters.
  • The C++ driver now monitors replica set health with theisMaster command instead ofreplSetGetStatus. This allows the C++ driver to supportsystems that require authentication.
  • New cursor.maxTimeMS() and corresponding maxTimeMSoption for commands to specify a time limit.

Tool Improvements

MongoDB Enterprise Features

The following changes are specific to MongoDB Enterprise Editions:

MongoDB Enterprise for Windows

MongoDB Enterprise for Windows is now available. Itincludes support for Kerberos, SSL, and SNMP.

MongoDB Enterprise for Windows does not include LDAP support forauthentication. However, MongoDB Enterprise for Linux supports usingLDAP authentication with an ActiveDirectory server.

MongoDB Enterprise for Windows includes OpenSSL version 1.0.1g.

Auditing

MongoDB Enterprise adds auditing capability formongod and mongos instances. See Auditingfor details.

LDAP Support for Authentication

MongoDB Enterprise provides support for proxy authentication of users.This allows administrators to configure a MongoDB cluster toauthenticate users by proxying authentication requests to a specifiedLightweight Directory Access Protocol (LDAP) service. SeeAuthenticate Using SASL and LDAP with OpenLDAP andAuthenticate Using SASL and LDAP with ActiveDirectory for details.

MongoDB Enterprise for Windows does not include LDAP support forauthentication. However, MongoDB Enterprise for Linux supports usingLDAP authentication with an ActiveDirectory server.

MongoDB does not support LDAP authentication in mixed shardedcluster deployments that contain both version 2.4 and version 2.6shards. See Upgrade MongoDB to 2.6 for upgrade instructions.

Expanded SNMP Support

MongoDB Enterprise has greatly expanded its SNMP support to provideSNMP access to nearly the full range of metrics provided bydb.serverStatus().

See also

SNMP Changes

Additional Information

Changes Affecting Compatibility

Some changes in 2.6 can affect compatibility and may require user actions. The2.6 mongo shell provides adb.upgradeCheckAllDBs() method to perform a check for upgradepreparedness for some of these changes.

See Compatibility Changes in MongoDB 2.6 for a detailed list ofcompatibility changes.

See also

All Backwards incompatible changes (JIRA)%20AND%20%22Backwards%20Compatibility%22%20in%20(%20%22Minor%20Change%22%2C%22Major%20Change%22%20)%20ORDER%20BY%20votes%20DESC%2C%20issuetype%20DESC%2C%20key%20DESC).

Upgrade Process

See Upgrade MongoDB to 2.6 for full upgrade instructions.

Download

To download MongoDB 2.6, go to the downloads page.

Other Resources