Release Notes - Core Server - Version 2.5.0 - HTML format

Question

  • [SERVER-792] - Bind to localhost by default in RPM and debs only
  • [SERVER-9111] - $CLUSTER & $SERVER databases

Bug

  • [SERVER-2898] - Inconsistency in recursive array matching semantics
  • [SERVER-5099] - Non-ASCII text on the command line isn't handled well in Windows
  • [SERVER-5689] - The string "return," passed as a parameter to MongoDB function calls, causes Javascript to return
  • [SERVER-5697] - Unmatched quotes in regular expression cause JS shell to enter multi-line mode
  • [SERVER-5809] - Double quote escaping bugged
  • [SERVER-6079] - v8 and spidermonkey handle Timestamps differently
  • [SERVER-6646] - Strings with NUL bytes don't round-trip correctly from BSON <-> JavaScript
  • [SERVER-6652] - memory leak on Matcher validation failure after _where allocated
  • [SERVER-6947] - db.createCollection creates undefined fields which cause mongorestore to fail
  • [SERVER-6972] - C++ driver should use isMaster, not replSetGetStatus, to monitor health of a replica set
  • [SERVER-7189] - Apparent typo or cut-and-paste error in src/mongo/db/db.h
  • [SERVER-7355] - mongoimport cannot import a dump in json array format larger than 16MB
  • [SERVER-7424] - Shell trims multiple whitespace characters in strings when displaying (data not affected)
  • [SERVER-7588] - mongo shell ISODate return bug
  • [SERVER-7728] - Add more details on why a shard is 'unavailable' for balancing
  • [SERVER-7892] - JS (v8) doesn't indent
  • [SERVER-7974] - Suppress stack trace on replication errors
  • [SERVER-8030] - mongo shell crashes with missing host
  • [SERVER-8070] - Flush buffer before changing sync targets to prevent unnecessary rollbacks
  • [SERVER-8265] - Shell - show logs needs better error message when unauthorized.
  • [SERVER-8280] - copydb command always requires credentials if the destination mongod is running with authentication, even if the source is running without it
  • [SERVER-8420] - GhostSync::percolate() should refresh dead cursors with OplogReader::tailCheck()
  • [SERVER-8502] - Running auth passthrough test with --authMechanism=CRAM-MD5 still actually runs with MONGO-CR
  • [SERVER-8532] - Re-enable tests now that mongo shell reconnect logic for SASL auth is fixed
  • [SERVER-8714] - findAllChunks / _findAllCollections leak memory on invalid chunks
  • [SERVER-8720] - Memory leak in DBClientReplicaSet::slaveConn
  • [SERVER-8741] - mrShardedOutput.js failing on multiple platforms - ensure transferMods after commit
  • [SERVER-8799] - Sort or Find on Symbol data type throws exception
  • [SERVER-8836] - sharding/remove2.js failing on Windows with "local database 'test' exists"
  • [SERVER-8844] - mongos with --upgrade and missing --auth flag prints "config servers not in sync" message
  • [SERVER-8861] - GeoSearch::expandEndPoints can elicit --multiset::begin()
  • [SERVER-8873] - Bug in decision logic for whether a term in a document is a stopword
  • [SERVER-8880] - mongo_sm.exe segfaults for certain configuration settings when building with VS2010
  • [SERVER-8899] - upgrading ShardChunkManager without write lock on setShardVersion can cause errors on writes
  • [SERVER-8914] - Rename (serverStatus.metrics) "document.scanned" -> "queryExecutor.scanned"
  • [SERVER-8921] - improve error message on invalid text index spec
  • [SERVER-8933] - Fix multiVersion tests for 2.5.0 branch
  • [SERVER-8936] - TestParsingOverflow unit test failing
  • [SERVER-8952] - constructors.js failing in debug mode
  • [SERVER-8974] - $geoNear alias causes error when using with 2d index
  • [SERVER-8984] - DBClientInterface::getLastError should test for command failures
  • [SERVER-8993] - New GetRecordAllocationSizeWithPadding unit test failing
  • [SERVER-8999] - Searches on partitioned text indexes return no results if "language" is specified
  • [SERVER-9014] - Mongod and mongos crash induced by many concurrent invocations of the getnonce command.
  • [SERVER-9027] - Using DBRef as shard key not working anymore in 2.2.0+
  • [SERVER-9029] - Duplicate users in system.users causes problem with 2.4.x upgrade
  • [SERVER-9041] - proactively detect broken connections detected by the network
  • [SERVER-9047] - warning: failed to read from /proc/self/numa_maps: errno:2 No such file or directory
  • [SERVER-9050] - configsvr + getLastError w:1 should not return norepl error, just note
  • [SERVER-9054] - Update db.help() with new format for addUser()
  • [SERVER-9061] - Mongostat 2.4 segfaults when called with multiple hosts and auth
  • [SERVER-9062] - mongod crashes when creating a "2dsphere" index on a large (~10 million docs) collection.
  • [SERVER-9066] - Field names can be repeated in JavaScript when the same value is set multiple times
  • [SERVER-9082] - JSON parser doesn't accept simple DBRef $id values, like ints or strings
  • [SERVER-9085] - db.replSetInfo() issue with converting OpTimes to seconds
  • [SERVER-9087] - Index changes lost during initial sync period
  • [SERVER-9088] - printjson/printjsononeline JS helpers may attempt to access the 'DB' object (even if it doesn't exist)
  • [SERVER-9089] - 'Cloning' a document in JavaScript can create an empty _bson field
  • [SERVER-9093] - Make copydb command work with auth on mongos
  • [SERVER-9125] - Unable to upgrade config metadata from v3 to v4 - 13127 getMore: cursor didn't exist on server, possible restart or timeout?
  • [SERVER-9129] - Reset JS scope data after logout and login
  • [SERVER-9139] - cursor leak in mongos of unsharded cursors
  • [SERVER-9148] - In text searches with $near filter, results don't obey filter
  • [SERVER-9182] - mongorestore won't restore manually edited .metadata.json file if user editor adds trailing newline
  • [SERVER-9213] - Resource constraints cause premature OOM and segfault
  • [SERVER-9214] - Phrase search won't match phrases that aren't space-delimited
  • [SERVER-9228] - s2cursor can return dups when it yields
  • [SERVER-9229] - Windows 32bit failing intermittently on migrateBig.js
  • [SERVER-9230] - v8 ObjectTracker isn't tracking uncollected objects
  • [SERVER-9242] - serverStatus workingSet and indexCounters not working on Windows
  • [SERVER-9251] - "Extra" fields added to lazy BSON V8 objects not order preserving
  • [SERVER-9260] - Race in hash_presplit.js
  • [SERVER-9267] - Issues with readonly BSON in v8
  • [SERVER-9307] - Server can abort SSL handshake for clients that have SSL session caching enabled
  • [SERVER-9315] - local.slaves is not correctly maintained in authenticated system.
  • [SERVER-9333] - WriteConcern with tags>2 say the write timedout, when it didn't
  • [SERVER-9339] - rollback files missing after rollback
  • [SERVER-9385] - Shell ignores modified object's "_id" field
  • [SERVER-9396] - otherLock cache variable was not working
  • [SERVER-9400] - Certain queries can fail on collection containing compound index with "text" component
  • [SERVER-9401] - GeoJSON Parser: Can't extract geo keys from object, malformed geometry?
  • [SERVER-9417] - opReplicatedEnough should assert on step down
  • [SERVER-9419] - initial_sync4.js failing on Windows DEBUG
  • [SERVER-9421] - queryoptimizer3.js failing during parallel tests basic and basicPlus
  • [SERVER-9448] - Read-only receivers in MapReduce code cause modifications to be silently ignored
  • [SERVER-9452] - index rebuilder can't use DBDirectClient to query the list of namespaces
  • [SERVER-9474] - Members not caught up to minvalid can later inadvertently delay state change to SECONDARY
  • [SERVER-9484] - 2dsphere Index may not return all documents for $near and geoNear
  • [SERVER-9491] - Upper chunk key not written properly to the log in some places
  • [SERVER-9502] - Using regex in _id breaks replication
  • [SERVER-9512] - C++ driver compilation failure
  • [SERVER-9528] - Retry network errors during initial sync document copies
  • [SERVER-9538] - mongodb 2.4.3 crash : BufBuilder attempted to grow() to 134217728 bytes, past the 64MB limit
  • [SERVER-9542] - Incorrectly coded chunk/shard version comparison
  • [SERVER-9546] - failure in zbigMapReduce.js on windows 64 debug
  • [SERVER-9578] - mongos dies on SIGUSR1 instead of rotating logs
  • [SERVER-9618] - server8070.js failing intermittently across OS X builders
  • [SERVER-9619] - Test passes wrong argument to assert.soon
  • [SERVER-9621] - closeall.js failing on new windows 32-bit builder
  • [SERVER-9623] - replset9.js failing on windows
  • [SERVER-9633] - Missing endl in two log statements
  • [SERVER-9638] - no_empty_reset.js failing
  • [SERVER-9641] - correctly pass fromMigrate flag on migration index creation
  • [SERVER-9647] - Query using compound 2dsphere index with additional descending field can block indefinitely
  • [SERVER-9649] - No public role grants writebacksQueued
  • [SERVER-9650] - rs_stepdown_and_pooling.js failing on windows 32
  • [SERVER-9658] - Reduce frequency of debug message "we think data is in ram"
  • [SERVER-9661] - config upgrade fails if collection missing "key" field
  • [SERVER-9678] - extsorttest failures on Windows
  • [SERVER-9679] - extsorttest failures on RHEL 6.2
  • [SERVER-9694] - stepdown3.js failing on SSL special builder
  • [SERVER-9695] - Couldn't kill $where op in features3.js on RHEL 32
  • [SERVER-9714] - auto2.js failing on Win32 builder
  • [SERVER-9718] - authCommands.js waits too short a time for migrations
  • [SERVER-9719] - sharding_multiple_ns_rs.js use wait logic instead of sleep to make sure new primary is online
  • [SERVER-9720] - return_partial_shards_down.js turn off balancer before manual chunk moves
  • [SERVER-12656] - Spurios error "dbclient_rs _checkStatus couldn't _find" for arbiters

New Feature

  • [SERVER-1367] - create an $eq operator for queries that works similar to $gte and $lte
  • [SERVER-6407] - Authenticate users via LDAP proxy
  • [SERVER-6991] - Add pool stats for ShardedConnection
  • [SERVER-8463] - Add support to SConscript for enabling/disabling link-time-optimization
  • [SERVER-8464] - Add build system support for C++11 enabled compilation

Task

  • [SERVER-6526] - mongodb-10gen-unstable Ubuntu/Debian package is outdated
  • [SERVER-6727] - Style fixes for earlier commit
  • [SERVER-7172] - Build support libraries for update() operators
  • [SERVER-7388] - Implement all query operators using MatchExpression
  • [SERVER-7390] - handle index coverings using new expression ast
  • [SERVER-7391] - Parse bson queries into new MatchExpression AST
  • [SERVER-7496] - Mongo.exe client crashes when username of home directory contains a unicode character
  • [SERVER-7760] - Add a map/reduce test for V8
  • [SERVER-7772] - replication source code file reorg
  • [SERVER-8066] - mongorestore should ignore undefined options
  • [SERVER-8460] - Remove ScopedDbConnection::getScopedDbConnection factory functions in favor of instantiating ScopedDbConnections directly
  • [SERVER-8471] - Remove Command::requiresAuth
  • [SERVER-8813] - Migrate to Cyrus SASL2 library for sasl authentication.
  • [SERVER-8920] - Add new fields to dbStats command for pdfile version
  • [SERVER-9151] - Write and check in new index API interfaces
  • [SERVER-9163] - Add btree access method, move BtreeCursor to use it.
  • [SERVER-9164] - Port existing indices to new interface
  • [SERVER-9165] - Migrate build/insert/update/delete/etc. to new interface
  • [SERVER-9188] - Revert isMaster behavior wrt godScope
  • [SERVER-9212] - Final hunt of all remaining uses of old interfaces
  • [SERVER-9411] - Minimal implementation that can replace BSONObjExtSorter and build indexes

Improvement

  • [SERVER-2011] - mongodump, bsondump and mongoexport should only write to stderr in case of a serious error
  • [SERVER-2771] - Background index builds on replica set secondaries
  • [SERVER-4099] - Please Provide Windows Mongodb server in MSI package format
  • [SERVER-4100] - Please provide Windows mongodb client program in MSI format
  • [SERVER-4654] - stop setting 'args' in invoke
  • [SERVER-4739] - Race condition in log rotation (was: SIGUSR1 should set a flag rather than doing rotation)
  • [SERVER-4836] - Making replica set sync ups faster will speed up development of drivers
  • [SERVER-6243] - Fix all uses of shared_ptr<BSONObj>
  • [SERVER-6400] - Refactor Matcher/QueryExpression
  • [SERVER-6885] - Output of show dbs should look nicer (fixed width or smarter spacing)
  • [SERVER-6929] - Aggregate helper is not listed in collection.help()
  • [SERVER-7271] - On transient config server failure, mongod should not abort
  • [SERVER-7392] - Replace existing usage of Matcher where possible with MatchExpression
  • [SERVER-7430] - Warning about smallfiles should include filename
  • [SERVER-7445] - $in operator should require an array
  • [SERVER-7902] - mongo shell should read /etc/mongorc.js at startup before $HOME/.mongorc.js
  • [SERVER-8169] - Need alternate password entry mechanism for PEM key
  • [SERVER-8357] - Missing space in log message
  • [SERVER-8383] - Make mongos poll less aggressively for cursor timeout
  • [SERVER-8465] - SCons should honor CC and CXX from the environment
  • [SERVER-8466] - The --clang build flag should be eliminated in favor of accurately detecting what compiler is in use.
  • [SERVER-8467] - Official support for building with clang
  • [SERVER-8536] - reenable IndexRebuilder for background indexing
  • [SERVER-8546] - Add more tests covering JSON to BSON functionality
  • [SERVER-8558] - Add tests covering replica set flapping and heartbeatTimeoutSecs
  • [SERVER-8676] - Enable support for building against libc++ on OS X when building for C++11
  • [SERVER-8791] - Create a uniform index API across all types of indices
  • [SERVER-8819] - Add round trip unit jstest framework for 10gen custom types in javascript interpreter
  • [SERVER-8820] - Add jstest to test argument checking of 10gen custom types
  • [SERVER-8824] - Add testing for stored javascript in different contexts
  • [SERVER-8842] - SCons build should pass -mmacosx-version-min=<something> when building on OS X
  • [SERVER-8897] - Avoid using non-portable ##__VA_ARGS comma elision construct in mongo initializers facility
  • [SERVER-8901] - Improvements to DBQuery help(), comment() and some internal refactoring
  • [SERVER-8938] - remove "noauth" global in code, replace with "auth"
  • [SERVER-8943] - max connections is hard coded to 20,000
  • [SERVER-8969] - Windows minimum version should be specified on the build command line, not in targetver.h
  • [SERVER-8983] - Add error code for authentication fails - especially important for auditing products
  • [SERVER-9003] - Display replica set chaining topology in rs.status()
  • [SERVER-9022] - Enable mongos mode which releases ShardConnections to the pool after read ops
  • [SERVER-9149] - dropIndexes() in the shell does not check for arguments
  • [SERVER-9174] - Race condition on read_pref_rs_client.js after reconfig.
  • [SERVER-9185] - Add GC Prologue and Epilogue heap stats
  • [SERVER-9312] - sharding_migrateBigObject.js longer timeout for slow machines
  • [SERVER-9387] - expose namespace name in aboutToDelete when logging a diskloc delete (for migrations)
  • [SERVER-9399] - Invalid index on config.lockpings on the 2.4.1 config server
  • [SERVER-9629] - CoreDriver/dbclient.cpp remove unused variable
  • [SERVER-9635] - Add spaces and commas to chunk display
  • [SERVER-9636] - Display chunk version, not memory address, in non-default log line
  • [SERVER-9713] - Port remaining BSONObj named accessors to accept StringData

Edit/Copy Release Notes

The text area below allows the project release notes to be edited and copied to another document.