Release Notes - Core Server - Version 2.5.4 - HTML format

Question

  • [SERVER-11329] - Authentication Error number does not match the error code in error message

Bug

  • [SERVER-4830] - Reject upsert if would create duplicate field names
  • [SERVER-5588] - mapReduce and eval not recognized by mongos
  • [SERVER-6824] - error message "couldn't find a chunk which should be impossible"
  • [SERVER-6835] - Sharding edge case upserts documents with multiple _id attributes
  • [SERVER-7063] - Blank key in embedded doc seems to prevent findAndModify from applying modifier
  • [SERVER-7756] - numeric named element selection semantics differ for regular expressions, $all
  • [SERVER-7883] - debian install fails if mongodb user already exists
  • [SERVER-8213] - Make copyDB and clone work with auth when using new-style users
  • [SERVER-8378] - indexbg1.js failures
  • [SERVER-8432] - Mongod can fail to output error message during index building
  • [SERVER-9074] - Upsert fails with "cannot modify shard key" when not modifying shard key
  • [SERVER-9257] - 2dsphere compound index cannot be used non-geo search
  • [SERVER-9362] - Mongod crashes at first getnonce call if process started without stdout and stderr file descriptors initialized.
  • [SERVER-9389] - Querying 2d indexes with $exists:false fails and the error message is incorrect
  • [SERVER-9476] - Don't log entire command obj for authenticate
  • [SERVER-9525] - compact should preserve namespace traits
  • [SERVER-9579] - Smoke tests should always use --smoke-db-prefix
  • [SERVER-9791] - Move "replication batch size is" log message from level 1 to 2
  • [SERVER-9855] - remove injection of macports and fink include and library paths
  • [SERVER-9959] - Tools do not support SSL
  • [SERVER-10130] - replsets/no_chaining.js and tags.js failing on Nightly Linux 32-bit
  • [SERVER-10206] - sharding/read_pref.js timed out on Nightly Linux 64-bit Subscription RHEL 6.2
  • [SERVER-10353] - Cannot disable MONGODB-X509 in enterprise build.
  • [SERVER-10383] - read_pref_cmd.js failed on Windows 64-bit
  • [SERVER-10390] - Logged non-ASCII text displayed on Windows console is mojibake (garbage)
  • [SERVER-10519] - Mongos support for new write operations
  • [SERVER-10627] - Change in matching null against undefined in 2.5 vs 2.4
  • [SERVER-10636] - Unexpected results for $near with 2d index and GeoJSON point
  • [SERVER-10672] - slowNightly/index_check10.js fails to check validity
  • [SERVER-10725] - incorrect results from $ne query using sparse index
  • [SERVER-10815] - Can't authenticate against database "*"
  • [SERVER-10867] - 2dsphere Polygon parsing error
  • [SERVER-10870] - Need to include snmp files as part of the windows enterprise msi
  • [SERVER-10944] - Prevent granting users roles on $external database
  • [SERVER-10945] - isMaster can return duplicate hosts
  • [SERVER-10963] - Fix required privileges for aggregation with $out.
  • [SERVER-10970] - the invalid arguments to addUser message contains terrible UX
  • [SERVER-10980] - MR parallel processing failed
  • [SERVER-10995] - Elapsed time for $maxTimeMS queries includes time to acquire db lock
  • [SERVER-11024] - Update replication options in /etc/mongod.conf
  • [SERVER-11025] - Adding a user with x509 certificate = server certificate appears to work
  • [SERVER-11027] - not authorized to execute repairDatabase for user with role clusterAdmin
  • [SERVER-11042] - Index Rebuilder may not always run at startup on a single-node replica set
  • [SERVER-11052] - New (batch) write ops return ok:<bool>
  • [SERVER-11054] - mergeChunks doesn't increment minor version correctly
  • [SERVER-11055] - mergeChunk error message wrong when chunk on wrong shard
  • [SERVER-11085] - renameCollection must be run on the admin database on mongod but can be run on any database through mongos
  • [SERVER-11098] - authorization error when running convertToCapped command with dbAdmin role
  • [SERVER-11099] - clang compiled mongo shell crashes on exit with a stack trace in v8
  • [SERVER-11104] - cleanupOrphaned doesn't verify startingFromKey matches shard key spec
  • [SERVER-11135] - BSONObjBuilder.appendNumber(numeric_limits<long long>::min()) results in 0 value
  • [SERVER-11141] - SSL command line error message typo
  • [SERVER-11156] - Useless code in shell save() function
  • [SERVER-11183] - core PerfTests::Throw failing on OS X 10.8 C++11 DEBUG
  • [SERVER-11194] - Non-numeric expiresAfterSeconds causes bad TTL query
  • [SERVER-11195] - Mongo Shell Should Not Connect to Servers w/ Invalid or Expired SSL Certificates
  • [SERVER-11196] - Debian packages do not properly conflict with distro subpackages mongodb-server, mongodb-dev, and mongodb-clients
  • [SERVER-11202] - index creation auditlogs with the address of the index spec object instead of the object
  • [SERVER-11203] - Remove millisToTimeT and extractMillisPortion from time_support.h/cpp
  • [SERVER-11204] - Catch c++ exceptions in JSThread
  • [SERVER-11214] - drop_sharded_db.js (sharding_auth) failed on Linux 64-bit DEBUG
  • [SERVER-11216] - Interrupted geoNear commands on mongos don't return an error code
  • [SERVER-11221] - maxTimeMS(0.1) should return error
  • [SERVER-11222] - Refresh invalid users in user cache exactly once for command access control checks
  • [SERVER-11224] - listCommands outdated help for aggregate command
  • [SERVER-11226] - Mongod cannot use relative file paths for keyFile if --fork is enabled
  • [SERVER-11227] - cleanupOrphaned parses secondaryThrottle parameter incorrectly
  • [SERVER-11235] - rollback4.js failing intermittently on multiple buildvariants
  • [SERVER-11236] - jstests/logprocessdetails.js occasionally failing via passthrough
  • [SERVER-11237] - auditlogging of updateUser with an empty roles array causes seg fault
  • [SERVER-11240] - Wrong error message when readPreference tags are invalid
  • [SERVER-11241] - Updates allow creating $id/ref/db prefixed fields
  • [SERVER-11245] - mongod service does not start on Debian Squeeze
  • [SERVER-11250] - DBCommandCursor missing help() method
  • [SERVER-11264] - OS X builds don't run on older versions of the os
  • [SERVER-11270] - explainb.js failed on OS X 10.8 C++11 DEBUG
  • [SERVER-11271] - Capitalization inconsistent on the word "keyfile" in --clusterAuthMode
  • [SERVER-11275] - Secondaries are not keeping their role graphs up-to-date when admin.system.roles is updated.
  • [SERVER-11281] - Duplicate setting of default "admin" db in mongostat_options.cpp:152
  • [SERVER-11282] - C++ client driver install target does not install new util/options_parser headers
  • [SERVER-11294] - Assertion: 16105 stack trace in dbstats command
  • [SERVER-11297] - Running a query with CursorTailable flag against non-existent collection crashes mongod.
  • [SERVER-11300] - Possible to Create Circular Roles
  • [SERVER-11301] - moveChunk command failing in some sharding tests on slow hosts
  • [SERVER-11302] - Deadlock in invalidateUserCache
  • [SERVER-11304] - SNMP: subagent with nojournal throws exception during snmpwalk
  • [SERVER-11309] - checkShardingIndex auth error for user-defined role with "find" privilege
  • [SERVER-11310] - auth errors for mapReduce and group commands with user-defined roles
  • [SERVER-11312] - reIndex command fails with user-defined roles
  • [SERVER-11324] - Create unique index on colleciton with hashed sharding key
  • [SERVER-11330] - mongodump --version runs the actual command
  • [SERVER-11331] - auth error with createRole command
  • [SERVER-11333] - C++ __declspec( thread ) causes a crash in a managed windows environment
  • [SERVER-11340] - SNMP field mismatch - 64bit sever status field mapped to 32 bit MIB counter type
  • [SERVER-11341] - Need to modify mongodb_x64.wixproj to allow passing in value for Merge Module
  • [SERVER-11346] - Add opcounter commands and repl section to SNMP
  • [SERVER-11354] - Improve log message when auth'd user not found via mongos
  • [SERVER-11356] - Authentication with Kerberos Crashes Mongod
  • [SERVER-11359] - index_many2.js failing on Window 64-bit DEBUG
  • [SERVER-11360] - Splits can fail if the split point was once a chunk boundary
  • [SERVER-11365] - using the old addUser syntax gives a warning followed by a success with confusing ux
  • [SERVER-11373] - distinct3.js failed on Linux 64-bit DEBUG, Windows 64-bit DEBUG
  • [SERVER-11374] - Can create indexes on non-insertable fields (i.e. beginning with '$')
  • [SERVER-11378] - bson.h not compilable in isolation due to use of undefined macro dassert in bson_field.h
  • [SERVER-11386] - authCheck documentation should reflect reality
  • [SERVER-11409] - audit log for createIndex should have only the index spec in the index spec location
  • [SERVER-11410] - Add RHEL support to subagent config file
  • [SERVER-11411] - No way to list all roles in 2.6 db
  • [SERVER-11415] - aggregate helper fails against old server versions (unrecognized field "cursor"
  • [SERVER-11419] - dur/closeall.js failing on RHEL 5.7
  • [SERVER-11420] - SNMP Field type mismatches
  • [SERVER-11424] - collStats and dbStats should work for a user with the clusterMonitor role
  • [SERVER-11427] - Audit logging for action 'renameCollection' needs to match the spec
  • [SERVER-11428] - copyauth.js failing on Enterprise-Linux 64-bit Amazon AMI
  • [SERVER-11433] - group() fails with undefined assertion when namespace does not exist
  • [SERVER-11434] - distinct3.js failing via parallel on Windows 64 DEBUG
  • [SERVER-11440] - 'indexName' needs trimming when auditing 'dropIndexes'
  • [SERVER-11445] - reIndex command result document is missing nIndexesWas field
  • [SERVER-11459] - Rename folders in C++ Driver
  • [SERVER-11462] - smoke tests not handling windows-style data directory paths well
  • [SERVER-11464] - Commit #826a11 broke x509 auth tests
  • [SERVER-11465] - SNMP: snmp-master when master/slave throws exception during snmpwalk
  • [SERVER-11466] - SNMP: snmpd restart always reowns unix socket to inaccessible ownership
  • [SERVER-11468] - $exists behaves differently when matching an array element
  • [SERVER-11472] - segfault on updateUser on RHEL 6.2
  • [SERVER-11474] - No auditing done by grantRolesToUser or revokeRolesFromUser
  • [SERVER-11475] - Recursion through role graph with user-defined roles causes seg faults
  • [SERVER-11482] - Minor issues with new delete write command
  • [SERVER-11490] - OSX Dur off slow_weekly - update_yield1.js failed
  • [SERVER-11491] - core/test failing on linux
  • [SERVER-11496] - max_time_ms_sharded.js failing in "sharding" suite across multiple builders
  • [SERVER-11497] - out-of-bounds exception when dropRole gets null input
  • [SERVER-11499] - dumprestore5.js in tool suite failing across many builders
  • [SERVER-11501] - testshard1.js failing in aggregation and aggregation_auth suites on debug builds
  • [SERVER-11502] - misplaced openssl callback registration can cause crashes
  • [SERVER-11504] - DropAllRolesFromDatabase doesn't record in audit log
  • [SERVER-11505] - constructors.js breaking in js suite in linux 32
  • [SERVER-11507] - drop(Users|Roles)FromDatabase should be renamed dropAll(Users|Roles)FromDatabase
  • [SERVER-11518] - SNMP should handle variable typed serverStatus metrics
  • [SERVER-11519] - replica set reconfig action doesn't seem to authenticate in bson format
  • [SERVER-11522] - grantRolesToRole says it's granting read@admin when not requested to
  • [SERVER-11524] - revokeRolesFromRole doesn't seem to record what roles it revoked
  • [SERVER-11525] - Provide nicer message when converting JS to BSON if too big
  • [SERVER-11526] - GrantPrivilegesToRole and RemovePrivilegesFromRole audit record shows *all* privileges not *granted* privileges
  • [SERVER-11527] - Inconsistent arguments in grant/revoke roles/privileges to/from role
  • [SERVER-11529] - explaina.js failing on linux-64
  • [SERVER-11531] - Cannot $rename to/from an array field
  • [SERVER-11538] - libserver_options.a does not depend on what it needs to link
  • [SERVER-11539] - Aggregation command returning a document close to the maximum size fails.
  • [SERVER-11544] - Coverity analysis defect 14909
  • [SERVER-11548] - Coverity analysis defect 13229: Accessing "mongo::dbexitCalled" without holding lock
  • [SERVER-11550] - hash_shard_num_chunks.js failing on Windows-64 buildvariants (was auth.js)
  • [SERVER-11555] - Deprecate addUser shell helper in favor of createUser helper
  • [SERVER-11557] - sorta.js failing on OSX C++11 Debug
  • [SERVER-11561] - Coverity analysis defect 11083: Data race condition (MISSING_LOCK)
  • [SERVER-11565] - basic.js failing on Linux-64
  • [SERVER-11582] - $uniqueDocs validation does not error with "uniquedocs" or "$uniquedocs" tag names.
  • [SERVER-11603] - move updateRecord from pdfile to collection
  • [SERVER-11604] - mongos --syslogFacility segfaults
  • [SERVER-11606] - gridfs.js failed on linux 64 bit
  • [SERVER-11609] - access violation in AuthzManagerExternalStateMongod::getUserDescription
  • [SERVER-11613] - Some log messages are not being reported to buildlogger/mci
  • [SERVER-11630] - SNMP: isMaster status not reported on master/slave configuration
  • [SERVER-11636] - remove Extent::getNextExtent and Extent::getPrevExtent
  • [SERVER-11650] - Unittests freeing unallocated thread specific pointer in debug mode
  • [SERVER-11656] - js_small_oplog failing because master and slave collection hashes differ
  • [SERVER-11657] - multiversion test suite is failing
  • [SERVER-11663] - multiversion aggregation-sharding test failing
  • [SERVER-11667] - Error message typo in fts_command_mongod.cpp: "too many text index"
  • [SERVER-11676] - writeback_bulk_insert.js builds object that is too large
  • [SERVER-11684] - chunk diffing can be more efficient
  • [SERVER-11700] - basic9.js failing in slowWeekly/shardingpassthrough on Linux 64
  • [SERVER-11709] - Correctly handle applyOps command as part of role graph updating
  • [SERVER-11720] - Immutable update checks not done for replacements
  • [SERVER-11723] - compactPreservePadding should use its own database
  • [SERVER-11729] - dup_bgindex.js failing on RHEL 5.7, "Should find only one doc"
  • [SERVER-11738] - key_many.js failing intermittently during multi update
  • [SERVER-11805] - find() on field names starting with '$' behaves differently 2.4 v 2.5
  • [SERVER-11984] - Can't perform queries on sub-documents stored in a field name = the value of that document's index within an array in version 2.4

New Feature

Task

  • [SERVER-7128] - Integration tests for Auth
  • [SERVER-9118] - Enterprise builds with FIPS switch feature
  • [SERVER-9233] - Add jstests for role-based access control
  • [SERVER-9513] - Enumerate and define grantable actions in MongoDB
  • [SERVER-9514] - System-defined roles
  • [SERVER-9516] - Upgrade/downgrade support for new schema for user and role data
  • [SERVER-10338] - Create okForStorage mutable::document implemention
  • [SERVER-10489] - Move okForStorage checks till after in-mem update, but before persistence
  • [SERVER-10493] - Update tools to support backing up and restoring user data properly with new user format 2.6
  • [SERVER-10542] - expression indices: indexing/key generation
  • [SERVER-10543] - expression indices: migrate non-expr functionality of current indices to stages
  • [SERVER-10763] - Make initShardVersion return isMaster output
  • [SERVER-10791] - Write commands privilege check is incomplete
  • [SERVER-10855] - Add a way to specify in createUser and updateUser commands whether the server should hash the password or the driver already has
  • [SERVER-10943] - Return server-generated _id from upsert
  • [SERVER-11191] - Use new query system for updates
  • [SERVER-11249] - Valgrind complains about CollectionInfoCache::notifyOfWriteOp
  • [SERVER-11260] - Fully remove canDelegate and hasRole fields from user role possession code
  • [SERVER-11295] - Encode "anyAction" in a future-proof way
  • [SERVER-11319] - Rename grantAnyRole and revokeAnyRole actions to grantRole and revokeRole
  • [SERVER-11349] - FIPS unit test
  • [SERVER-11355] - Auditing: Remove connection id from spec and source code
  • [SERVER-11357] - Auditing: better access denied message
  • [SERVER-11388] - Make it so that user defined roles can only have privileges on the database they are scoped to
  • [SERVER-11426] - C++ driver should accept both "userSource" and "db" when specifying what DB to authenticate against in the auth helper
  • [SERVER-11479] - aggregate and collMod commands should accept maxTimeMS option
  • [SERVER-11627] - Make the shell use write commands by default
  • [SERVER-11686] - write_cmd_auto_split.js failure on debug builds

Improvement

  • [SERVER-4018] - Add option to compact command to leave in padding.
  • [SERVER-4736] - less aggressive resets on remote staleconfigexception
  • [SERVER-4816] - aggregation: optimize $sort on sharded setup to do a proper merge on mongos
  • [SERVER-6552] - make resync command work with replica sets
  • [SERVER-6950] - TCMalloc builds should report malloc stats as a ServerStatusSection
  • [SERVER-7217] - Provide a method for C++ driver clients to use for cleaning up global resources
  • [SERVER-7708] - RPMs should automatically create /var/run/mongodb to store the PID
  • [SERVER-9060] - Introduce a built-in role for taking backups of nodes
  • [SERVER-9394] - optimize secondaries to not create excessive load on the primary under certain scenarios
  • [SERVER-9815] - Introduce a role for monitoring cluster members
  • [SERVER-9932] - Text search languages should accept standard two letters notation "en", "es"... (ISO 639-1)
  • [SERVER-9958] - $setOnInsert should allow _id to be set
  • [SERVER-10023] - allow a user to change own password
  • [SERVER-10868] - Make external sort tests into standalone unit tests, outside of dbtests/test.exe.
  • [SERVER-10942] - Assign value 11000 to ErrorCodes::DuplicateKey
  • [SERVER-10968] - Improved SSL error handling
  • [SERVER-11053] - Support use of SCons CacheDir feature to eliminate long and complex variant directory names
  • [SERVER-11147] - Split SNMP config to separate master & subagent files
  • [SERVER-11148] - Create new build suite for SSL tests that cannot run with --use-ssl
  • [SERVER-11184] - Perf : merge consecutive calls to $match
  • [SERVER-11197] - $push error messages unclear
  • [SERVER-11288] - suppress new SNMP connect messages by default in mongod.conf
  • [SERVER-11298] - Better message for experimental storage and index commands
  • [SERVER-11337] - Make error reporting consistent whenever throwing an exception in a Command
  • [SERVER-11343] - Change chunk manipulation commands to require privileges on the sharded collection rather than the cluster resource
  • [SERVER-11361] - RunOnAllShardsCommand::run() should set "code" on error, if appropriate
  • [SERVER-11375] - Change the sslMode parameter values
  • [SERVER-11431] - Create command for transitioning sslMode and clusterAuthModeStates
  • [SERVER-11594] - JSON format audit records
  • [SERVER-11602] - Use serverStatus for all SNMP metrics
  • [SERVER-11692] - Change Variables implementation in agg to not use string lookup at runtime.

Edit/Copy Release Notes

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