Release Notes for MongoDB 2.4
On this page本页内容
March 19, 2013
MongoDB 2.4 includes enhanced geospatial support, switch to V8 JavaScript engine, security enhancements, and text search (beta) and hashed index.
Patch Releases
2.4.14 -- April 28, 2015
- Init script sets process ulimit to different value compared to documentation SERVER-17780
- Compute BinData length in v8 SERVER-17647
- Upgrade PCRE Version from 8.30 to Latest SERVER-17252
- 2.4.14 Changelog.
- All 2.4.14 improvements
.
2.4.13 -- February 25, 2015
- Enforce BSON BinData length validation SERVER-17278
- Disable SSLv3 ciphers SERVER-15673
- Improve BSON validation SERVER-17264
- 2.4.13 Changelog.
- All 2.4.13 improvements
.
2.4.12 -- October 16, 2014
- Partially written journal last section causes recovery to fail SERVER-15111.
- Explicitly zero
.ns
files on creation SERVER-15369. - 2.4.12 Changelog.
- All 2.4.12 improvements
.
2.4.11 -- August 18, 2014
- Fixed potential information leak: SERVER-14268.
- Resolved issue were an
_id
with a$prefix
field caused replication failure due to unvalidated insert SERVER-12209. - Addressed issue where updates to documents with text-indexed fields could lead to incorrect entries SERVER-14738.
- Resolved issue where creating descending index on
_id
could corrupt namespace SERVER-14833. - 2.4.11 Changelog.
- All 2.4.11 improvements
.
2.4.10 -- April 4, 2014
- Performs fast file allocation on Windows when available SERVER-8480.
- Start elections if more than one primary is detected SERVER-10793.
- Changes to allow safe downgrading from v2.6 to v2.4 SERVER-12914
, SERVER-12175.
- Fixes for edge cases in index creation SERVER-12481
, SERVER-12956.
- 2.4.10 Changelog.
- All 2.4.10 improvements
.
2.4.9 -- January 10, 2014
- Fix for instances where
mongos
incorrectly reports a successful write SERVER-12146. - Make non-primary read preferences consistent with
slaveOK
versioning logic SERVER-11971. - Allow new sharded cluster connections to read from secondaries when primary is down SERVER-7246.
- All 2.4.9 improvements
.
2.4.8 -- November 1, 2013
- Increase future compatibility for 2.6 authorization features SERVER-11478.
- Fix
dbHash
cache issue for config servers SERVER-11421. - All 2.4.8 improvements
.
2.4.7 -- October 21, 2013
- Fixed over-aggressive caching of V8 Isolates SERVER-10596.
- Removed extraneous initial count during mapReduce SERVER-9907.
- Cache results of dbhash command SERVER-11021.
- Fixed memory leak in aggregation SERVER-10554.
- All 2.4.7 improvements
.
2.4.6 -- August 20, 2013
- Fix for possible loss of documents during the chunk migration process if a document in the chunk is very large SERVER-10478.
- Fix for C++ client shutdown issues SERVER-8891.
- Improved replication robustness in presence of high network latency SERVER-10085.
- Improved Solaris support SERVER-9832
, SERVER-9786
, and SERVER-7080.
- All 2.4.6 improvements
.
2.4.5 -- July 3, 2013
- Fix for CVE-2013-4650 Improperly grant user system privileges on databases other than local SERVER-9983.
- Fix for CVE-2013-3969 Remotely triggered segmentation fault in Javascript engine SERVER-9878.
- Fix to prevent identical background indexes from being built SERVER-9856.
- Config server performance improvements SERVER-9864
and SERVER-5442.
- Improved initial sync resilience to network failure SERVER-9853.
- All 2.4.5 improvements
.
2.4.4 -- June 4, 2013
- Performance fix for Windows version SERVER-9721
- Fix for config upgrade failure SERVER-9661.
- Migration to Cyrus SASL library for MongoDB Enterprise SERVER-8813.
- All 2.4.4 improvements
.
2.4.3 -- April 23, 2013
- Fix for
mongo
shell ignoring modified object's_id
field SERVER-9385. - Fix for race condition in log rotation SERVER-4739.
- Fix for
copydb
command with authorization in a sharded cluster SERVER-9093. - All 2.4.3 improvements
.
2.4.2 -- April 17, 2013
- Several V8 memory leak and performance fixes SERVER-9267
and SERVER-9230.
- Fix for upgrading sharded clusters SERVER-9125.
- Fix for high volume connection crash SERVER-9014.
- All 2.4.2 improvements
2.4.1 -- April 17, 2013
- Fix for losing index changes during initial sync SERVER-9087
- All 2.4.1 improvements
.
Major New Features
The following changes in MongoDB affect both standard and Enterprise editions:
Text Search
Add support for text search of content in MongoDB databases as a beta feature. See Text Indexes for more information.
Geospatial Support Enhancements
- Add new 2dsphere index. The new index supports GeoJSON
objects
Point
,LineString
, andPolygon
. See 2dsphere Indexes and Geospatial Queries. - Introduce operators
$geometry
,$geoWithin
and$geoIntersects
to work with the GeoJSON data.
Hashed Index
Add new hashed index to index documents using hashes of field values. When used to index a shard key, the hashed index ensures an evenly distributed shard key. See also Hashed Sharding.
Improvements to the Aggregation Framework
- Improve support for geospatial queries. See the
$geoWithin
operator and the$geoNear
pipeline stage. - Improve sort efficiency when the
$sort
stage immediately precedes a$limit
in the pipeline. - Add new operators
$millisecond
and$concat
and modify how$min
operator processesnull
values.
Changes to Update Operators
Additional Limitations for Map-Reduce and $where
Operations
The mapReduce
command, group command, and the $where
operator expressions cannot access certain global functions or properties, such as db
, that are available in the mongo
shell. See the individual command or operator for details.
Improvements to serverStatus
Command
Provide additional metrics and customization for the serverStatus
command. See db.serverStatus()
and serverStatus
for more information.
Security Enhancements
- Introduce a role-based access control system User Privileges now use a new format for
Privilege Documents
. - Enforce uniqueness of the user in user privilege documents per database. Previous versions of MongoDB did not enforce this requirement, and existing databases may have duplicates.
- Support encrypted connections using SSL certificates signed by a Certificate Authority. See Configure
mongod
andmongos
for TLS/SSL.
For more information on security and risk management strategies, see MongoDB Security Practices and Procedures.
Performance Improvements
V8 JavaScript Engine
Change default JavaScript engine from SpiderMonkey to V8. The change provides improved concurrency for JavaScript operations, modernized JavaScript implementation, and the removal of non-standard SpiderMonkey features, and affects all JavaScript behavior including the commands mapReduce
, group, and eval
and the query operator $where
.
See JavaScript Changes in MongoDB 2.4 for more information about all changes .
BSON Document Validation Enabled by Default for mongod
and mongorestore
Enable basic BSON object validation for mongod
and mongorestore
when writing to MongoDB data files. See wireObjectCheck
for details.
Index Build Enhancements
- Add support for multiple concurrent index builds in the background by a single
mongod
instance. See building indexes in the background for more information on background index builds. - Allow the
db.killOp()
method to terminate a foreground index build. - Improve index validation during index creation. See Compatibility and Index Type Changes in MongoDB 2.4 for more information.
Set Parameters as Command Line Options
Provide --setParameter
as a command line option for mongos
and mongod
. See mongod
and mongos
for list of available options for setParameter
.
Changed Replication Behavior for Chunk Migration
By default, each document move during chunk migration in a sharded cluster propagates to at least one secondary before the balancer proceeds with its next operation. See Range Migration and Replication.
Improved Chunk Migration Queue Behavior
Increase performance for moving multiple chunks off an overloaded shard. The balancer no longer waits for the current migration's delete phase to complete before starting the next chunk migration. See Asynchronous Range Migration Cleanup for details.
Enterprise
The following changes are specific to MongoDB Enterprise Editions:
SASL Library Change
In 2.4.4, MongoDB Enterprise uses Cyrus SASL. Earlier 2.4 Enterprise versions use GNU SASL (libgsasl
). To upgrade to 2.4.4 MongoDB Enterprise or greater, you must install all package dependencies related to this change, including the appropriate Cyrus SASL GSSAPI
library. See Install MongoDB Enterprise for details of the dependencies.
New Modular Authentication System with Support for Kerberos
In 2.4, the MongoDB Enterprise now supports authentication via a Kerberos mechanism. See Configure MongoDB with Kerberos Authentication on Linux for more information. For drivers that provide support for Kerberos authentication to MongoDB, refer to Driver Support.
For more information on security and risk management strategies, see MongoDB Security Practices and Procedures.
Additional Information
Platform Notes
For macOS, MongoDB 2.4 only supports macOS versions 10.6 (Snow Leopard)
and later. There are no other platform support changes in MongoDB 2.4. See the downloads page for more information on platform support.
Upgrade Process
See Upgrade MongoDB to 2.4 for full upgrade instructions.