MongoDB Changelog

What's new in MongoDB 4.0.2

Aug 29, 2018
  • Issues fixed:
  • SERVER-35720: Allow zones to be created on non-existent collection
  • SERVER-35441: drop/dropDatabase does not cleanup config.tags
  • SERVER-36102: Create initial chunks on appropriate shards for zoned sharding
  • SERVER-36070: Aggregation with $out results in error when Auditing is enabled
  • SERVER-34846: Covered index with collated field returns incorrect result when collation not involved in match or sort
  • SERVER-34664: Commands that are unsupported in a transaction should error

New in MongoDB 4.0.1 (Aug 6, 2018)

  • Security:
  • SERVER-35125 null pointer read access violation in SSLHandshakeManager::doServerHandshake
  • SERVER-36027 Enterprise build does not recognize the –redactClientLogData flag
  • Sharding:
  • SERVER-33237 Optimize the Range Deleter speed
  • SERVER-33697 Provide sanity check on number of cached sessions
  • SERVER-34897 Introduce parameter to control whether MongoS should automatically retry failed find commands
  • SERVER-35609 Create initial chunk on primaryShard if only writing one chunk
  • SERVER-35632 Blacklist lagged_config_secondary.js and all_config_servers_blackholed_from_mongos.js from RHEL 6.7 s390x variants
  • SERVER-35691 Make all code paths returning StaleConfig error go through the StaleConfigInfo serializer
  • SERVER-35711 Remove unused anonymous function getPersistedMaxDbVersion() from shard server catalog cache loader
  • SERVER-35745 _getNextSessionMods doesn’t include oplogReplay flag to query new oplog created during migration
  • SERVER-35938 NamespaceSerializer lock should be used for database as well as collection during createCollection
  • SERVER-35997 Await replication on config server after shardCollection in safe secondary reads tests
  • SERVER-36041 Increase the size of changelog and actionlog
  • SERVER-36075 Add comment to shard_identity_rollback.js explaining why we set the FCV to 4.0 on the shardsvr
  • SERVER-36132 Invariant that chunk migration is actually reflected in the metadata after successful commit
  • SERVER-36232 Refresh after chunk migration commit may not see the committed metadata
  • Replication:
  • SERVER-32088 ChangeStream resumeAfter does not work on sharded collections if not all shards have chunks for the collection
  • SERVER-34414 Creating a role with buildsIndexes:false node hits an fassert
  • SERVER-34758 replSetGetStatus can deadlock with initialSyncer
  • SERVER-35124 Stepdown suites with MMAP V1 often fail due to flushing mmaps taking long time
  • SERVER-35200 Speed up failure detection in the OplogFetcher during steady state replication
  • SERVER-35388 Improve misleading error messages for aggregation stages banned in transactions
  • SERVER-35488 ReplSetTest.waitForState() should ensure node has finished closing connections
  • SERVER-35571 Wait until all nodes become stable before checkOplogs
  • SERVER-35991 Turn off chaining in set_feature_compatibility_version.js
  • SERVER-35992 Secondary should have no vote in SecondaryReadsTest
  • Query:
  • SERVER-34789 Using resume token from an ‘invalidate’ notification with ‘resumeAfter’ should error
  • SERVER-34933 pcre verb support
  • SERVER-35693 Parsing of $in takes quadratic time due to O(n^2) boost::flat_set constructor
  • SERVER-35751 Make kill_own_ops.js more robust
  • SERVER-35851 Consider checking whether the array passed to $in is already sorted before calling std::sort
  • SERVER-35929 Possible use-after-free when reloading the view catalog due to an invalidation
  • Aggregation:
  • SERVER-35028 Add change stream notifications for collection drop and rename
  • SERVER-35029 Add change stream notification for database drop
  • SERVER-35084 change_stream_enforce_max_time_ms_on_mongos.js expects getMore to schedule follow-up getMores
  • SERVER-35634 view_catalog_cycle_lookup.js should not always assert that finds on views will succeed
  • SERVER-35961 Remove uninitialized count variable in MapReduce command
  • Catalog:
  • SERVER-35563 The UUIDCatalog onCreateCollection observer should atomically unregister and re-register catalog entries
  • Storage:
  • SERVER-32509 Mobile SE: Implement error reporting for unsupported startup options
  • SERVER-32997 Mobile SE: Design and implement multi-reader or single-writer concurrency
  • SERVER-33605 Mobile SE: Disable capped collections
  • SERVER-33651 Mobile SE: Use full synchronous mode for SQLite writes
  • SERVER-34002 readConcern_snapshot.js should wait for writes to be majority-committed on secondaries before reading
  • SERVER-34113 Remove all support for snapshot reads outside of multi-document transactions
  • SERVER-34129 Don’t hold database or collection locks during oplog truncation
  • SERVER-34579 Do not populate indexDetails for mobile storage engine
  • SERVER-34713 Progressively declining dropDatabase performance
  • SERVER-35085 repair can cause spurious NamespaceNotFound errors with concurrent initial sync operations
  • SERVER-35317 restartCatalog problematically discards minVisibleSnapshot data
  • SERVER-35398 Mobile SE: Remove code for capped collection
  • SERVER-35671 DatabaseHolderImpl::closeAll can leave catalog in an incomplete state
  • SERVER-35704 Tag readConcern_snapshot.js with ‘uses_transactions’
  • SERVER-35789 check for index catalog isready mismatch for multi-doc txns
  • SERVER-35859 Disable rocksdb buildvariant
  • SERVER-35994 Reduce CPU load in secondary_reads_unique_indexes.js test
  • SERVER-36006 multiInitialSyncApply should consider setting a read timestamp of kNoTimestamp
  • SERVER-36025 RestartCatalogCommand can attempt to reinitialize oplog pointers on standalones
  • SERVER-36167 Add pretty printer for WT flags members
  • GridFS:
  • SERVER-35361 filemd5 command fails to safely clean up PlanExecutor after manual yield
  • Operations:
  • SERVER-27264 With net.ssl.allowConnectionsWithoutCertificates: true, allow disabling no client certificate log warnings
  • SERVER-32064 A logical session id should be included in all command requests from the mongo shell
  • SERVER-34160 Mongo client run buffered command when terminated.
  • SERVER-35758 Mongo shell prompt errors when running transactions after overriding “db”
  • SERVER-35903 Free monitoring doesn’t allow disabling from the shell without enabling it first
  • SERVER-36010 Change log messages for Windows stacktraces to use error() or severe() rather than log()
  • SERVER-36088 Replica set connection strings trigger access violation on 4.0 shell + Windows
  • Build and Packaging:
  • SERVER-33000 Platform Support: add Ubuntu 18.04
  • SERVER-33996 Don’t apply self signing until after bundling the SDK.
  • SERVER-35600 Add support for armv7-k
  • SERVER-35901 Add toolchain path to lint task
  • SERVER-36039 Support LibreSSL 2.7 on FreeBSD
  • SERVER-36082 Don’t link getShardMap command into embedded
  • Tools:
  • TOOLS-2058 mongoreplay does not show OP_MSG commands
  • TOOLS-2062 Support zlib compression in mongoreplay
  • TOOLS-2075 mongoreplay always replays to secondary
  • Internals:
  • SERVER-33817 Powercycle test using kill mongod
  • SERVER-34563 Connect via SRV record fails if the returned record resides in subdomain
  • SERVER-34793 Add call to BF suggestion server on failed task completion
  • SERVER-34810 Session cache refresh can erroneously kill cursors that are still in use
  • SERVER-34956 big_object1.js is not resilient to unexpected stepdowns
  • SERVER-34984 Update major_version_upgrade.js test to call setFCV to the latest FCV
  • SERVER-34996 Save console_output & console_screenshot from aws_ec2.py as artifacts in evergreen.yml
  • SERVER-35101 Handle differently a badly formed bindIp argument
  • SERVER-35165 Disable and re-enable update_test_lifecycle Evergreen task on the 4.0 branch
  • SERVER-35188 Typo in ServiceLiason* types
  • SERVER-35263 Add FSM workloads for testing atomicity and isolation of updates inside a transaction across multiple collections and databases
  • SERVER-35312 Update system_perf.yml and perf.yml to compare to 3.6.5 baseline for master and 4.0
  • SERVER-35313 CleanupConcurrencyWorkloads resmoke hook needs to handle the balancer
  • SERVER-35383 Increase electionTimeoutMillis for the ContinuousStepdown hook used in stepdown suites
  • SERVER-35389 Remove dead code from old FSM suite
  • SERVER-35506 The Powercycle wait_for_mongod_shutdown function should ensure the mongod process is no longer running
  • SERVER-35523 FSMWorkloadTestCase erroneously sets TestData.sameDB=true and TestData.sameCollection=true
  • SERVER-35550 Bridge should not block listener while making outbound connections
  • SERVER-35578 Switch package tests to new package testing VPC
  • SERVER-35588 powertest.py should call replSetReconfigure command only after successful replSetGetConfig
  • SERVER-35627 Repair should re-create missing collection data files from the existing metadata
  • SERVER-35664 Run the android embedded tests on api24 system images
  • SERVER-35668 Avoid moving concurrency tests to small instances on arm64
  • SERVER-35675 find_by_uuid_and_rename.js should not fail from QueryPlanKilled when yielding during a collection rename
  • SERVER-35692 Add support to an optional re-registration bool in metrics response
  • SERVER-35702 Stop running the agg and update fuzzer on macOS
  • SERVER-35724 Remote EC2 hosts which are not accessible via ssh should fail with system error
  • SERVER-35727 make the embedded sdk compile task in to a multi-task task group.
  • SERVER-35834 Fix compile errors in dns_name_test on Microsoft compilers
  • SERVER-35850 Update filename suffix to v4.0-latest for nightly builds
  • SERVER-35858 Error in call BF Suggestion service
  • SERVER-35908 Shutdown service entry point in mongoed before shutting down embedded
  • SERVER-35990 Update evergreen_task_timeout.py REQUIRED_BUILD_VARIANTS list
  • SERVER-35993 read_concern_uninitiated_set restarts nodes so must not allow ephemeral storage
  • SERVER-36055 Mobile SE: Compact returns wrong error code on mobile
  • SERVER-36144 want to add an empty cloud_nightly.yml file
  • TOOLS-1991 Build tools with Go 1.10.1
  • WT-3839 Document the undefined behavior when a range truncate overlaps with inserts
  • WT-3917 Enhance WT_CURSOR::reserve documentation around commit visibility
  • WT-4024 Fix a race between split and next/prev
  • WT-4048 Generalize timing_stress_for_test split functionality
  • WT-4067 Enhance LSM to not pin as much history in cache
  • WT-4101 Don’t abort the eviction server during session verify when oldest_timestamp is held back
  • WT-4111 Improve checkpoint scrubbing algorithm
  • WT-4125 Ensure that subsequent checkpoints with stable timestamp don’t read too much
  • WT-4133 Coverity 1393445, 1393446 Dereference before null check
  • WT-4136 Add a new timing stress flag that yields during tree search
  • WT-4138 Add an option to timeout waiting for space in the cache
  • WT-4139 rename the cursor restart statistic to match implementation
  • WT-4140 Cursor walk limits quick eviction page selection unnecessarily.
  • WT-4141 Enhance checkpoint with timestamps to unblock eviction sooner
  • WT-4143 Use WiredTiger.turtle.set if it exists but WiredTiger.turtle does not
  • WT-4145 Only include the checkpoint timestamp during checkpoints
  • WT-4146 Coverity 1393639, unused variable
  • WT-4152 Save return value for later comparison in transaction code

New in MongoDB 3.6.5 (May 25, 2018)

  • Issues fixed:
  • SERVER-34746: Segmentation fault when shard is started with –shardsvr before being added to a shard
  • SERVER-34423: collMod interruption may cause invariant failure
  • SERVER-34390: MongoDB binaries for macOS support TLS 1.2.
  • SERVER-29463: Platform Support: add Debian 9 “stretch”
  • SERVER-34399: $changeStream with invalid resume token crashes the server.

New in MongoDB 3.6.3 (Feb 26, 2018)

  • Security:
  • SERVER-31893 Explicitly define timeout for synchronous LDAP calls
  • SERVER-32086 Suppress LDAP user cache invalidation log message by default
  • SERVER-32779 Upgrade third_party tomcrypt to 1.18.1 final
  • SERVER-32933 Allow mongod to start when unable to reach LDAP server
  • Sharding:
  • SERVER-27724 Explore whether we can further minimize chunk metadata reloads on shards
  • SERVER-28923 Add diagnosability and supportability features for retryable writes
  • SERVER-29423 Sharding balancer may schedule multiple migrations with the same source or destination
  • SERVER-30152 add safe secondary reads targeted tests for mapReduce
  • SERVER-30671 Don’t expect operationTime to not change in causal_consistency_shell_support.js
  • SERVER-31860 setFCV on a cluster can fail to call setFCV on shards if the config server primary’s ShardRegistry is empty
  • SERVER-31979 Chunk migration statistics are not recorded in the moveChunk.commit changelog entries
  • SERVER-32235 Blacklist core/drop3.js test from causally consistent workloadss
  • SERVER-32368 do not perform UUID check against a shard’s config cache in the sharding_csrs_continuous_config_stepdown_WT suite
  • SERVER-32554 Source shard stepdown while entering critical section can trigger cloner invariant
  • SERVER-32568 The migration_sets_fromMigrate_flag.js test is not compatible with sharding continuous stepdown suite
  • SERVER-32569 Introduce uniform way to allow config servers and shard replica sets to start in non-cluster mode
  • SERVER-32592 Stepdown during migration cleanup can crash the source shard primary
  • SERVER-32593 CSRS stepdown during migration commit can trigger fassert on source shard primary
  • SERVER-32886 Unnecessary sleeps during chunk migration
  • SERVER-32901 Pull the CollectionShardingState map out of ShardingState
  • SERVER-32924 tag skip_sharding_configuration_checks test with requires_persistence tag
  • SERVER-32970 Put back random chunk size initialization in mongos auto split tracking
  • SERVER-33234 dropIndexes on mongos should ignore IndexNotFound from individual shards if some shard returned success
  • Replication:
  • SERVER-21456 Improve closing connection behavior when stepping down from primary
  • SERVER-28290 stepping down due to a higher term seen in a heartbeat should not discard term after stepdown
  • SERVER-28895 Remove old form of replSetUpdatePosition command
  • SERVER-31707 Test changeStreams on a sharded collection where the shard doesn’t know the collection is sharded
  • SERVER-32028 Make reconfig() in rslib.js resilient to NodeNotFound error
  • SERVER-32209 Reset the in-memory optimes on PV downgrade and upgrade
  • SERVER-32361 Rollback tests that expect a fatal assertion after node restart should not wait for connection
  • SERVER-32402 dropDatabase after step down can cause fassert
  • SERVER-32432 Race condition causes seg fault in ReplicationCoordinatorExternalStateImpl shutdown
  • SERVER-32532 Two-phase dropDatabase may not replicate all collection drops before the database drop.
  • SERVER-32556 Retryable write on local db hits an invariant
  • SERVER-32564 Increase assert.soon timeout when waiting for election in rollback_crud_op_sequences.js
  • SERVER-32624 dropDatabase() should wait for collection drops using ReplicationCoordinator::awaitReplication() instead of awaitReplicationOfLastOpForClient()
  • SERVER-32783 CollectionCloner::shutdown() should not block on resetting _verifyCollectionDroppedScheduler
  • SERVER-32794 Make timeouts unrelated to elections not depend on election timeout
  • SERVER-32803 stepup.js should retry replSetStepUp command when it is overtaking another primary
  • SERVER-32840 Remove pv0 jepsen tests
  • SERVER-32919 initial_sync_many_dbs.js should use less data
  • Query:
  • SERVER-28260 Create a killAnyCursor privilege
  • SERVER-31484 Operation deadline and awaitData timeout should be separate
  • SERVER-31854 After the first drop, assertSchemaMatch() should assert that subsequent drops succeed
  • SERVER-32441 3.6 mongod crash on find with index and nested $and/$or
  • SERVER-32492 idhack_sharded.js should use _waitForDelete:true in moveChunk
  • SERVER-32606 Tailing oplog on secondary fails with CappedPositionLost
  • SERVER-33005 Contained $or access planning is incorrect for $elemMatch object, results in invariant failure
  • SERVER-33089 Unable to start queryable mongod because it failed to regenerate index for admin.system.users
  • SERVER-33092 elemMatchProjection.js incorrectly assumes that shell generates monotonically increasing _id values
  • SERVER-33333 Prevent failed cross user getMores from having side effects
  • Aggregation:
  • SERVER-31760 Lookup sub-pipeline is not using index for equality match
  • SERVER-32349 Resuming a sharded change stream when there are multiple changes with the same timestamp may be impossible
  • SERVER-32690 Aggregation can trip invariant related to renamed fields optimization
  • Storage:
  • SERVER-32259 Improve error handling for fetchTypeAndSourceURI()
  • SERVER-32274 Do not timestamp applyOps writes on standalones
  • SERVER-32533 In oplog truncate with WT, don’t use a start key
  • SERVER-32573 Skip wt_delayed_secondary_read_concern_majority.js when running with WiredTiger’s LSM tree
  • SERVER-32637 Ensure that upgrading to 3.6 when on pv0 doesn’t break if you don’t explicitly turn off readConcernMajority
  • SERVER-32851 setFeatureCompatibilityVersion can race with createCollection such that FCV 3.6 is set and some collections do not have UUIDs
  • Operations:
  • SERVER-32072 DBRef with NumberInt ID changing to float in the shell
  • SERVER-32473 Error loading history file on first shell usage
  • SERVER-33140 mongodb+srv URI support broken on shell v3.6.2 for Windows
  • Build and Packaging:
  • SERVER-32516 Fails to compile with Boost 1.66
  • SERVER-32580 Microbenchmarks: update the enterprise branch for mongo v3.6
  • SERVER-32649 got “used vector type where scalar is required” when using GCC 7
  • SERVER-32932 When testing SLES 12 packages make sure required repos exist
  • SERVER-33181 Upgrade ASIO to latest
  • Internals:
  • SERVER-21630 Expand resmoke’s CheckReplDBHash support to config servers and sharded replica sets
  • SERVER-28396 resmoke.py’s logkeeper client should respect size limit for POST requests by splitting them up
  • SERVER-28822 Improve DBConnectionPool’s growth semantics
  • SERVER-31636 Split up generational_jstestfuzz* Evergeen tasks into query_fuzzer and update_fuzzer tasks
  • SERVER-31670 Change replica set fixture used by replica_sets_jscore_passthrough to make its secondary have zero votes
  • SERVER-31768 Don’t create the first collection chunk on a primary drained shard
  • SERVER-31886 Powercycle tasks running on Windows
  • SERVER-31935 Archive process of interest core dumps from remote EC2 instance
  • SERVER-31942 Large changes in unreliable tests can prevent test lifecycle update
  • SERVER-32060 Move MMAPv1 powercycle tasks to MMAPv1 specific variants
  • SERVER-32071 Powercycle - use internal crash
  • SERVER-32074 Powercycle - Add stack dump when SIGUSR1 or Windows event is received
  • SERVER-32090 Powercycle - pymongo client args are overwritten
  • SERVER-32107 Update DNS root nameservers for DNS Query test
  • SERVER-32110 Powercycle remote host not accessible in Evergreen timeout phase
  • SERVER-32161 MongoDB 3.2+ fails to compile on PPC64LE with glibc 2.26+
  • SERVER-32169 A cursor created with a session cannot be killed outside that session
  • SERVER-32197 Remote host is missing the debug symbols for hang_analyzer in evergreen.yml
  • SERVER-32203 Log the remote EC2 instance status when a failure to access it is detected in evergreen.yml
  • SERVER-32205 Dropping admin db sets FCV to 3.4 but leaves UUIDs
  • SERVER-32222 change_streams_primary_shard_unaware.js needs to be marked as requiring persistence
  • SERVER-32228 Powercycle - handle remote host restarts
  • SERVER-32243 Add an option to have the validate hook skip some collections.
  • SERVER-32260 Call workload_setup.py from mongo repo
  • SERVER-32298 Add a background system task to periodically copy remote statistics in evergreen.yml
  • SERVER-32299 Add disk statistics for remote EC2 instances
  • SERVER-32376 Blacklist tests that manually call startSession in the retryable_writes_jscore_stepdown_passthrough suite
  • SERVER-32403 Increase remote EC2 expire time to 3 hours
  • SERVER-32410 Validate User::CredentialData before attempting to perform authentication
  • SERVER-32414 Remove stale stdx:: requirements from lint.
  • SERVER-32429 black list regex_targeting.js from step down suites
  • SERVER-32468 Use a 1-node CSRS in non-stepdown sharding passthroughs tests
  • SERVER-32475 Microbenchmarks on v3.6 use master version of enterprise module
  • SERVER-32486 Windows builds of the shell should report the failing domain name in DNS lookup failures
  • SERVER-32515 Powercycle - rsync file exclude list
  • SERVER-32520 Add VPC support for launching AWS EC2 instances
  • SERVER-32522 set_read_and_write_concerns.js treats mapReduce “out” field like aggregation’s $out stage
  • SERVER-32527 Update package tests to use new BUILD2 VPC
  • SERVER-32541 Disable Powercycle MMAPv1 task
  • SERVER-32551 Cluster with x.509 membership authentication serves client connection with cluster client certificate
  • SERVER-32585 Remove unnecessary dependencies from requirements.txt for ese_WT tests
  • SERVER-32609 update_test_lifecycle fails when a test group does not have historical data
  • SERVER-32614 update_test_lifecycle may fail because datetime.strptime() is not thread safe
  • SERVER-32631 specifying –bind_ip localhost results in error “address already in use”
  • SERVER-32664 Sys-perf enable running baselines at lower priority
  • SERVER-32680 Update perf projects to use newer baselines
  • SERVER-32691 Create passthrough for w=”majority” with 2-node replica set to address lost test coverage
  • SERVER-32704 sys-perf: Skip validating oplog as enabled by SERVER-32243
  • SERVER-32740 Set bootstrap.ycsb_dir and bootstrap.workloads_dir in system_perf.yml
  • SERVER-32766 net.bindIpAll with net.ipv6 fails with “listen: Address already in use, terminating”
  • SERVER-32772 dbtest task in Evergreen should write to task directory
  • SERVER-32774 Ensure change_streams_secondary_reads suite has voting secondaries
  • SERVER-32788 Update “secondary performance” sysperf test to use nonvoting secondaries
  • SERVER-32806 retried findAndModify not using oplogHack when querying for pre/post image oplog entry
  • SERVER-32891 Sys-perf change order of mongodb_setup and workload_setup calls
  • SERVER-32896 Upload dsi-artifacts.yml in system_perf.yml
  • SERVER-32925 sys-perf 3.6 should run the change stream tests
  • SERVER-32987 Move the contents of the ‘uuid’ library to be under ‘base’
  • SERVER-33068 run_check_repl_dbhash.js hook exits without actually running dbhash on a replica set
  • SERVER-33142 Experiment with disabling cluster reuse in system_perf.yml
  • SERVER-33147 Limit the -j/num_jobs_available for high core ARM CI servers
  • SERVER-33158 Logical Session refresh batches are too large
  • SERVER-33219 Add a backpressure mechanism to the CRUD client in backup_restore*.js tests
  • SERVER-33236 Update perf.yml to use ssh form of git clone
  • WT-2705 High throughput cache bound many threaded workloads can experience long latencies
  • WT-3074 Automate a test to stress eviction walk with many active trees
  • WT-3133 Detect or track long latency operations
  • WT-3295 Allow LSM to merge into custom data sources
  • WT-3565 Test and understand mixed timestamp/no-timestamp usage to same data
  • WT-3587 Remove HAVE_VERBOSE conditional compilation
  • WT-3597 Add a diagnostic check for updates to the same key out of timestamp order
  • WT-3632 Increase how granularly cache usage settings can be configured
  • WT-3654 Fix warning in Windows build on evergreen
  • WT-3695 format failed to report a stuck cache
  • WT-3716 Restore the WT_VERB_TEMPORARY verbose flag.
  • WT-3720 flags macros cast flags to unsigned values, hiding warnings.
  • WT-3725 Add statistics to locks around timestamp structures
  • WT-3732 Handle adding WT indices while cursors on the table are open
  • WT-3734 Fix undefined behavior in verbose output
  • WT-3738 Review internal session allocation accounting
  • WT-3740 race in page dirty-byte decrement.
  • WT-3750 Fast-path fs_directory_list of a single file.
  • WT-3753 Building on Windows –enable-java
  • WT-3766 Lookaside sweep for obsolete updates
  • WT-3767 Avoid lookaside instantiation for faster reads
  • WT-3768 Lookaside optimization: birthmarks
  • WT-3769 Fix a bug in reverse cursor walks with particular delete patterns and prefix compression enabled
  • WT-3772 Hot backup causes uncontrolled growth of WiredTigerPreplog files
  • WT-3774 Enhance Python lookaside testing to cover cursor modify
  • WT-3775 Improve commit timestamp is older than oldest timestamp error message
  • WT-3779 Add support for string formats with WT_CURSOR::modify
  • WT-3780 Improve error messages on invalid WT_CURSOR::modify usage
  • WT-3783 Fix transaction isolation to use the correct enum
  • WT-3787 test_compact02 failed as compaction halted due to eviction pressure
  • WT-3790 Switch statistics to rdtsc from epoch calls
  • WT-3792 LSM version 1 metadata incompatibility
  • WT-3793 WiredTiger page debug dump functions should unpack integer keys
  • WT-3794 Coverity 1383547 and lint
  • WT-3795 lint cleanups for the op-tracking software, reduce record write size.
  • WT-3796 Report a better error message if transaction commit fails
  • WT-3799 Test/format with timestamps enabled pin cache full
  • WT-3806 Make sure rdtsc values move forward in time
  • WT-3807 clang static analysis updates
  • WT-3809 Fix a bug in lookaside related to birthmarks
  • WT-3810 wt_rdtsc calibration needs to be longer and verify validity
  • WT-3811 Add basic ability to visualise operation tracking
  • WT-3812 debugging page output should handle complex key/value items.
  • WT-3816 Enable prefix compression on the lookaside table
  • WT-3818 __rec_txn_read() code order cleanup
  • WT-3819 clang static analysis improvements
  • WT-3820 Add a WT_SESSION.breakpoint method for Python debugging.
  • WT-3822 Update WiredTiger copyrights to 2018
  • WT-3824 tsc_nsec_ratio can compute to zero and cause divide by zero bug
  • WT-3825 Fix calculation of CPU ticks per unit time
  • WT-3826 random-abort test failure
  • WT-3827 test_compact02 failure
  • WT-3828 Link error on OS/X for __wt_process data reference
  • WT-3831 uninitialized buffer value in statlog server path comparison
  • WT-3832 Fixup shell script warning messages
  • WT-3833 test/format cache_minimum value error
  • WT-3835 cursor remove tries to return a key that doesn’t exist
  • WT-3840 Dump more information when data corruption is encountered
  • WT-3841 Fix error message pattern in timestamp09
  • WT-3842 full-build Friday & lint
  • WT-3844 Checkpoints can hang on limbo pages
  • WT-3845 Compiler warning in examples using GCC 5.4.0
  • WT-3846 Refine operation tracking visualization tool
  • WT-3847 Add a stub API for prepared transaction
  • WT-3852 Update debugging when committing at an earlier timestamp
  • WT-3853 LSM version 1 metadata incompatibility
  • WT-3854 Remove write lock from commit path, leaving old entries in queue
  • WT-3860 lint

New in MongoDB 3.6.2 (Jan 11, 2018)

  • Security:
  • SERVER-31625 The contents of {USER} needs to be escaped when querying for the groups using LDAP server
  • Sharding:
  • SERVER-28992 Cleanup mongos write commands execution
  • SERVER-31982 Shard does not call config commit chunk migration command with majority writeConcern nor checks for writeConcern errors.
  • SERVER-32202 Do not clear the cached sharding filtering information on replication state changes
  • SERVER-32255 UUIDs may be absent from shard secondary local collections
  • SERVER-32480 Remove CatalogCache retrieval methods, which take StringData
  • SERVER-32529 Requiring replSet for shards breaks Queryable Backup
  • Replication:
  • SERVER-30626 Remove TopologyCoordinator interface
  • SERVER-31267 CollectionCloner fails if collection is dropped between getMore calls
  • SERVER-31684 QueryPlanKilled (operation exceeded time limit) in $changeStream with updateLookup
  • SERVER-31749 Clarify the reason temporary unique collection names are made
  • SERVER-32098 Disallow operations on drop-pending collections through applyOps
  • SERVER-32136 initial_sync_drop_collection.js should wait for system to stablize after restarting node
  • SERVER-32224 Disable chaining in initial_sync_drop_collection.js
  • Aggregation:
  • SERVER-32282 Aggregation text search returns text score even if it wasn’t requested when targeting multiple shards in a sharded cluster
  • SERVER-32430 DocumentSourceSort sorts array documents incorrectly if there is a non-simple collation
  • Storage:
  • SERVER-29909 Libraries db/db_raii and db/s/sharding are directly cyclic
  • SERVER-31750 Always log renameCollections in our tests
  • SERVER-32242 Fix race in CompatibleFirstStress lock manager test
  • SERVER-32315 Remove IndexObserver
  • Operations:
  • SERVER-32396 mongo shell failed to connect with 3.6 connection string SRV
  • Build and Packaging:
  • SERVER-31875 Fix long link times on OS X by passing -no_deduplicate to the linker
  • SERVER-32415 MongoDB msi installer for Compass contains a typo
  • Internals:
  • SERVER-30538 check that oplogTruncateAfterPoint is correct in PeriodicKillSecondaries hook
  • SERVER-31972 Reduce the number of iterations for the toggle_feature_compatibility.js workload
  • SERVER-31997 Add additional unittesting for CompatibleFirst policy
  • SERVER-32091 Powercycle - remove mongod.lock file for MMAPV1 test
  • SERVER-32145 Avoid dropping lock before cleaning up DocumentSourceCursor’s PlanExecutor
  • SERVER-32246 PID file permission on v3.6 make it not not monitorable using pid file
  • SERVER-32497 implicitly_retry_on_database_drop_pending.js calls tojson() inside of a loop
  • SERVER-32500 Disable the sharding Evergreen task on the Enterprise OS X 10.10 MMAPv1 builder

New in MongoDB 3.6.1 (Dec 28, 2017)

  • Issues fixed:
  • SERVER-30768: Primary queries using maxTimeMS cause temporary shard write unavailability if ExceededTimeLimit.
  • SERVER-31225: The mongod process forks before listening for connections.
  • SERVER-31885: changeStream cursor is not returned on a mongos when the database does not exist.
  • SERVER-32085: changeStream reports incorrect documentKey for unsharded collections that become sharded.
  • SERVER-32046: Arrays of certain NumberDecimals can trigger an invariant failure.
  • SERVER-32048: Updates using a numeric path component may cause index entries not to be created.

New in MongoDB 3.6.0 (Dec 5, 2017)

  • Detailed information about the changes, fixes and enhancements in this release are available at https://docs.mongodb.com/manual/release-notes/3.6/.

New in MongoDB 3.4.10 (Oct 28, 2017)

  • Security:
  • SERVER-25855 Increase more timeouts in mongos_cache_invalidation.js
  • SERVER-28727 mongoldap should not print each acquired role’s database inline
  • Sharding:
  • SERVER-29932 add asserts to mapReduce_inSharded_outSharded.js
  • SERVER-30825 blacklist shard_existing_coll_chunk_count.js from the continuous config stepdown suite
  • SERVER-31049 View with collation doesn’t work as expected in sharded cluster
  • SERVER-31091 The config server balancer stop command does not obey maxTimeMS
  • SERVER-31111 Add assert.commandWorked to migrateBig_balancer.js
  • SERVER-31204 Calling shardCollection after enableSharding may fail if executed against different mongos
  • Replication:
  • SERVER-29772 Provide option to 3.2 and 3.4 to allow initial sync to complete even when it encounters renameCollection entries
  • SERVER-30830 applyOps should return NamespaceNotFound when applying a CRUD operation on a non-existent collection/database
  • SERVER-30840 extend timeout in replsets/index_delete.js (3.4 only)
  • SERVER-30842 Don’t try to set last optime for client backwards after rollback
  • SERVER-31467 Blacklist initial_sync_rename_collection_unsafe.js from 3.2 initial sync variant
  • Query:
  • SERVER-31139 mongod fatal error after issuing $text index find containing nested non-text fields as the index prefix
  • SERVER-31366 profile_getmore.js does not tolerate killCursors command
  • JavaScript:
  • SERVER-29651 Interrupt signal is ignored when received inside certain functions.
  • SERVER-30362 JavaScript DBCollection.toString() stops working
  • SERVER-30502 –disableJavaScriptJIT does not disable JIT
  • Storage:
  • SERVER-15723 Avoid G_X lock for rename_collection within database
  • SERVER-28637 wiredtiger journal files accumulate with each server start/stop
  • SERVER-30927 Use readConcern afterClusterTime for initsync oplog queries
  • SERVER-31403 Disable mongo-rocks variant on v3.2 and v3.4
  • Operations:
  • SERVER-19076 printShardingStatus/sh.status should pass a decent indent to tojson() for shard keys
  • SERVER-28821 MozJS ASAN integration should not invariant that all memory was freed
  • SERVER-30361 mongod.conf bindIp option accept bogus parameters
  • SERVER-30769 Mongo shell throws ‘exception during autocomplete’
  • SERVER-31176 mongo shell should use stderr for password prompt
  • Build and Packaging:
  • SERVER-23516 Using apt-get update chowns user to mongodb
  • SERVER-30166 Use of string instead of std::string in some source files prevents compilation
  • SERVER-30558 Remove Solaris builds from master
  • SERVER-31197 building.md GCC version requirement out-of-date
  • SERVER-31338 RHEL compile task failing in drivers nightly 3.4 branch
  • Internals:
  • SERVER-21933 Update README
  • SERVER-29087 system-perf.yml needs to be changed to use the new name for the timeseries html file
  • SERVER-29287 Upgrade pcre to 8.41
  • SERVER-29524 sys-perf: Call infrastructure_provisioning.py instead of infrastructure_provisioning.sh
  • SERVER-29565 Remove sys-perf compare tasks
  • SERVER-30045 Debug symbols for unittest binaries are not uploaded on non-GDB platforms
  • SERVER-30117 FeatureCompatibilityVersion::onInsertOrUpdate should only write to the server parameter on commit
  • SERVER-30241 Attach workloads html to evergreen task
  • SERVER-30891 perf.yml: make the -repl variants run frequently
  • SERVER-30938 Enable ycsb-wmajority tests in system_perf.yml
  • SERVER-31006 Use the latest release of curator on all branches
  • SERVER-31108 Update baseline tag for microbenchmarks
  • SERVER-31271 don’t use nspr allocator for js threads for better ASAN
  • SERVER-31273 Use Source/Sink version of snappy functions
  • SERVER-31427 Disable stepback for Enterprise SLES 11/12 and Ubuntu1604 s390x
  • SERVER-31527 Rebaseline sys-perf after adjusting tests (3.4.9 and 3.2.17)
  • WT-3263 Allow archive on restart/recovery if clean shutdown
  • WT-3264 Permanent change to disable logging should eventually remove all logs
  • WT-3284 tree-walk restart bug
  • WT-3308 Add statistics tracking around yield loops
  • WT-3351 Recovery assertion failure: old_lognum < lognum
  • WT-3406 Reconciliation is choosing reserved records for writing.
  • WT-3461 Avoid long sleeps when the system clock is adjusted
  • WT-3470 Avoid a metadata cursor open for table open/drop
  • WT-3533 eviction handle walk can race with handle re-open
  • WT-3590 Keep data consistent if writes fail during a clean shutdown

New in MongoDB 3.4.9 (Sep 12, 2017)

  • Sharding:
  • SERVER-20392 Sharding an existing small collection results in large number of chunks
  • SERVER-30183 a moveChunk that joins the active moveChunk on a shard may not respect its waitForDelete
  • SERVER-30487 RangeDeleter holds WT transaction open while waiting for majority
  • SERVER-30636 RangeDeleter assert failed because of replication lag
  • Replication:
  • SERVER-28277 Need to increase timeout in read_committed_with_catalog_changes.js
  • SERVER-29802 Non-atomic applyOps command should not take out a global exclusive lock
  • SERVER-30554 relax locking mode in applyOps when applying CRUD-only ops non-atomically
  • Query:
  • SERVER-30189 Reduce calls to allocator for large $in expressions
  • Write Operations:
  • SERVER-27317 Inserting a document with a Decimal128 value when featureCompatibilityVersion is 3.2 results in a closed socket
  • JavaScript:
  • SERVER-30875 Add support for a “no-owned bson” mode for JS Scopes
  • SERVER-30971 Use of “scope” field in mapReduce triggers BSONObj ownership error
  • Storage:
  • SERVER-26239 Improve handling of WT_CACHE_FULL for inMemory storage engine
  • SERVER-30490 Compile RocksDB with USE_RTTI=1
  • SERVER-30790 ServerStatus on WiredTiger accesses the storage engine without any locks
  • Build and Packaging:
  • SERVER-29686 Remove /var/lib/mongodb from mongodb-org[-unstable] deb metapackage
  • SERVER-30562 avoid running many duplicate ARM64 tests for the community build
  • Internals:
  • SERVER-26377 Skip running FSM workloads that use the compact command on the LSM build variant
  • SERVER-26824 Skip FSM workloads which rely on nUpserted or nRemoved when Balancer is enabled
  • SERVER-28824 Unhandled hang analyzer exception escapes loop to get threads from each process
  • SERVER-29431 initialsync.js does not verify that initial sync succeeds
  • SERVER-29714 Add Exception Message to Validate_Locale.cpp
  • SERVER-30509 Update Evergreen API URL in burn_in_tests.py
  • SERVER-30643 Performance regression with SSL
  • WT-3329 With a uniform workload and a number of small collections, eviction does a poor job of selecting candidates for eviction.
  • WT-3438 Don’t tune eviction thread count when the count is fixed
  • WT-3499 Checkpoint can miss not yet committed item

New in MongoDB 3.5.12 Dev (Sep 8, 2017)

  • New Feature: SERVER-1243: New operator to update all matching items in an array
  • New Feature: SERVER-831: Positional Operator Matching Nested Arrays
  • Bug: SERVER-25059: URL support needs to support percent-encoding (escape sequences)
  • New Feature: SERVER-27089: Extend the update subsystem to support more expressive updates to array fields
  • Task: SERVER-30503: Redesign Moose storage structure
  • New Feature: SERVER-30564: Run embedded CAPI and transport layer tests in iOS simulator on evergreen
  • Bug: SERVER-30502: --disableJavaScriptJIT does not disable JIT
  • Bug: SERVER-20392: Sharding an existing small collection results in large number of chunks
  • Task: SERVER-29096: Set readPreference to secondary in causally_consistent_jscore_passthrough suite
  • Task: SERVER-29140: Return 'invalidate' entries and close the cursor on relevant drop, dropDatabase, and renameCollection oplog entries
  • Task: SERVER-29131: Support resumeAfter option to $changeNotication to control where to start returning notifications from, which always errors if no entry with the given resumeToken exists
  • Task: SERVER-29144: Filter out notifications from oplogEntries with 'fromMigrate":true
  • Task: SERVER-29203: Implement the SessionsCollection for sharded clusters
  • Task: SERVER-29202: Implement the SessionsCollection for replica sets
  • Task: SERVER-28964: Ensure OP_MSG handlers abandon connections in error cases required by the spec
  • Task: SERVER-28772: Create PushNode/PushAllNode
  • Task: SERVER-28793: Create primary mode unit tests for ShardServerCatalogCacheLoader once all the pieces are committed
  • Task: SERVER-28777: Always parse update expression as an UpdateNode tree when featureCompatibilityVersion=3.6
  • Bug: SERVER-28824: Unhandled hang analyzer exception escapes loop to get threads from each process
  • Improvement: SERVER-28648: Unittests should work if 'localhost' canonicalizes to other hostname
  • Bug: SERVER-29337: jstests/sharding/linearizable_read_concern.js should wait for shardIdentity to replicate to all secondaries before issuing secondary reads
  • Improvement: SERVER-29429: Pick a sane default for maxConnecting in sharding task executor
  • Improvement: SERVER-29422: Respect version.json in Evergreen patch builds
  • Task: SERVER-29502: Require the vote from the current primary in the election dry-run of catchup takeover
  • Task: SERVER-28510: Make Ingress and Egress networking layer support fire and forget over OP_MSG
  • Task: SERVER-28301: Add stats about the session record cache to the serverStatus command
  • New Feature: SERVER-28335: Implement the refreshSessions command
  • New Feature: SERVER-28338: Implement the killSessions command
  • Task: SERVER-28388: Improve lifetime handling of diagnosticMessage from LDAP operations
  • Improvement: SERVER-13061: Raise write batch limit to 100,000 ops and prevent oversized errors
  • Task: SERVER-13362: Need better messaging in BSONElement::chk() errors
  • Improvement: SERVER-24897: Configure Diffie-Hellman parameters for OpenSSL
  • Bug: SERVER-25855: Increase more timeouts in mongos_cache_invalidation.js
  • Improvement: SERVER-19541: Add option to resmoke.py to connect to an existing deployment
  • Task: SERVER-30566: Unwind SERVER-28190
  • Improvement: SERVER-30565: burn_in_tests.py shouldn't cause compile task to fail
  • Task: SERVER-30562: avoid running many duplicate ARM64 tests for the community build
  • Improvement: SERVER-30560: Support IDL serialization to OpMsgRequest document sequences
  • Improvement: SERVER-30558: Remove Solaris builds from master
  • Task: SERVER-30555: Roll Back to Checkpoint: drop the local.replset.checkpointTimestamp collection when we shut down in fCV 3.4
  • Improvement: SERVER-30554: relax locking mode in applyOps when applying CRUD-only ops non-atomically
  • Task: SERVER-30549: Ignore shardVersion on shard secondaries until 3.6 feature compatibility version is set
  • Bug: SERVER-30601: Coverity analysis defect 101964: PW.USELESS_TYPE_QUALIFIER_ON_RETURN_TYPE
  • Bug: SERVER-30589: Don't add stable timestamp candidates when in master slave mode
  • Bug: SERVER-30584: Sessions collection should not send refresh if there are no records
  • Bug: SERVER-30571: EphemeralForTest oplogStartHack segfaults if startingPosition is behind oplog
  • Task: SERVER-30593: Add 'available' as a valid read concern level
  • Task: SERVER-30588: Support binding all IPs associated with a hostname
  • Task: SERVER-30580: Unify implementations of Status and DBException
  • Bug: SERVER-30570: Coverity analysis defect 101918: PW.PARAMETER_HIDDEN
  • Bug: SERVER-30569: Coverity analysis defect 101928: Arguments in wrong order
  • Bug: SERVER-30574: remote_operations.py fails to handle ssh_options, quoting in operations and Windows files
  • Task: SERVER-30541: Roll Back to Checkpoint: Remove "rollback " log message prefixes
  • Improvement: SERVER-30536: disallow applyOps non-atomic mode when preCondition flag is used
  • Improvement: SERVER-30535: Consistent names for ServiceExecutorAdaptive metrics
  • Task: SERVER-30534: Create a _configsvrDropCollection command
  • Bug: SERVER-30528: createIndexes should ignore NamespaceNotFound uasserts during InitialSync
  • Task: SERVER-30743: Remove shell functions used for now obsoleted db.upgradeCheck()
  • Bug: SERVER-30720: Integer overflow in SharedBuffer::grow_reallocate
  • Task: SERVER-30521: in syncApply, throw NamespaceNotFound rather than returning a status on missing database
  • Improvement: SERVER-30520: SecureRandom::create() should return a unique_ptr
  • Bug: SERVER-30524: dateFromParts expects "milliseconds" instead of "millisecond"
  • Task: SERVER-30516: Reduce concurrency for Windows compile_all builds to avoid OOM failures
  • Task: SERVER-30512: Ensure all changeStreams field names match the spec
  • Task: SERVER-30509: Update Evergreen API URL in burn_in_tests.py
  • Task: SERVER-30506: Rename $changeNotification to $changeStreams
  • Improvement: SERVER-30507: Python git module should not use the '--work-tree' option
  • Task: SERVER-30501: Create rollback logging component
  • Bug: SERVER-30499: Only update sessions with a transaction number
  • Bug: SERVER-30500: don't assign UUIDs to system.indexes on collMod/upgrade
  • Bug: SERVER-30495: Remove erroneous percent sign in test lifecycle update JIRA issues
  • Bug: SERVER-30625: Reconnect node after calling waitForState shell helper in case the state transition closes connections
  • Bug: SERVER-30616: fix race in AbstractOplogFetcherTest::OplogFetcherReturnsOperationFailedIfExecutorFailsToScheduleFind
  • Improvement: SERVER-30619: Update Evergreen API URL in buildscripts/test_failures.py
  • Task: SERVER-30604: Mount EC2 instance drive for /data
  • Bug: SERVER-30627: Avoid network errors in restartServerReplication() in catchup takeover JS tests.
  • Bug: SERVER-30614: missing_key.js should check its inserts and commands
  • Bug: SERVER-30673: get last error command should be marked doesn't requireAuth
  • Improvement: SERVER-30670: Add clusterType TestData to generational fuzzer yml tests.
  • Improvement: SERVER-30651: Parallelize calls to the Evergreen API in update_test_lifecycle.py
  • Bug: SERVER-30703: make _configsvrShardCollection return the newly sharded collection's UUID
  • Bug: SERVER-30698: make the distinct command deterministically versioned on mongos for sharded collections
  • Bug: SERVER-30661: Build with --wiredtiger=off fails on master branch
  • Task: SERVER-30658: Add DBLevelLocking check to storage engine API
  • Improvement: SERVER-30646: Fix dbCheck health log entries
  • Bug: SERVER-30712: ClusterAggregate::aggPassthrough() should pass RetryPolicy::kIdempotent to handle transient network/failover errors
  • Task: SERVER-30706: Create specializations of AtomicWord that are lock-free for eligible user define dtypes
  • Bug: SERVER-30688: Using multiple changeStream cursors causes a segfault
  • Task: SERVER-30702: Stop printing stack traces in masserts
  • Bug: SERVER-30665: applyOps collMod handling should only allow nonexistent UUIDs for UUID upgrade collMods
  • Improvement: SERVER-30654: Add retry mechanism for failed API calls in test_failures module
  • Bug: SERVER-30648: Set GlobalLockAcquisitionTracker after we waitForLock
  • Bug: SERVER-30490: Compile RocksDB with USE_RTTI=1
  • Improvement: SERVER-30480: Update aggregation explain format to provide details of merge location
  • Task: SERVER-30479: Make async builder run daily
  • Bug: SERVER-30473: Denial of service from wild
  • Bug: SERVER-30362: JavaScript DBCollection.toString() stops working
  • Task: SERVER-30328: Have WT encryption at rest allow multiple wiredtiger_open/close calls in a single mongod process lifetime.
  • Bug: SERVER-30295: Connect FCV to WiredTiger compatibility version
  • Bug: SERVER-30234: Create embedded CAPI tests for CRUD operations
  • Improvement: SERVER-30230: Detailed error message when mongod fails to start to because systemLog.path points to a directory
  • Improvement: SERVER-30351: Add a traverseRecordStore() function in the RecordStoreValidateAdaptor
  • Task: SERVER-30319: When requesting only 1 thread for initial sync, use the 'find' command instead of 'parallelCollectionScan'
  • Improvement: SERVER-30302: Add explicit configuration object for UpdateSequenceGenerator
  • Task: SERVER-30335: Roll Back to Checkpoint: Call setInitialDataTimestamp at startup
  • Improvement: SERVER-30301: Add explicit configuration object for DocumentStructureEnumerator
  • Improvement: SERVER-30378: Add asynchronous writing facility
  • Improvement: SERVER-30379: Add health log
  • Improvement: SERVER-30353: Create an index observer to notify us of changes made to index and document keys
  • Improvement: SERVER-30352: Add a new class that will keep track of the index inconsistencies during validation
  • New Feature: SERVER-30327: Introduce ScalarGenerator interface for creating values of different BSON types in idempotency testing
  • Task: SERVER-30324: Move logic of removeShard to _configsvrRemoveShard
  • Task: SERVER-30310: Have WiredTigerKVEngine implement StorageEngine::setStableTimestamp/setInitialDataTimestamp
  • Task: SERVER-30081: Add a WiredTigerKVEngine "recovery" method that reconciles the _mdb_catalog and WT tables.
  • Task: SERVER-30046: Add support for $expr constant expressions to ComparisonMatchExpression
  • Bug: SERVER-29990: OP_MSG with duplicate field '$logicalTime'
  • Bug: SERVER-30057: Remove $logicalTime from core/set_param1.js test
  • Bug: SERVER-30040: ServiceStateMachine should redact exceptions before logging
  • Task: SERVER-30034: Create a $_internalSchemaMatchArrayElement MatchExpression
  • Task: SERVER-30076: Use the UUID of the config.transactions collection for rollback via refetch
  • Task: SERVER-29987: Make all non-write operations take readConcern
  • Bug: SERVER-30269: Bump ASIO to capture bug fixes
  • Improvement: SERVER-30265: Abstract enabling virtualenv in etc/evergreen.yml
  • Bug: SERVER-30266: ShardServerCatalogCacheLoader may drop collections causing failures in test validation
  • Task: SERVER-30281: Properly clear in-memory transaction table state after rollback
  • Bug: SERVER-30289: Ensure parallel shell in change_notification.js has started before running getMore it will wait for
  • Improvement: SERVER-30254: Make ThreadPool::join finish remaining tasks on a pristine thread instead of inline
  • Bug: SERVER-30183: a moveChunk that joins the active moveChunk on a shard may not respect its waitForDelete
  • Improvement: SERVER-30189: Reduce calls to allocator for large $in expressions
  • Task: SERVER-30175: Extend the JSON Schema parser to handle restriction keywords for scalars
  • Task: SERVER-29939: Update sequence generation for testing oplog idempotency
  • Task: SERVER-29944: Implement a basic idempotency checker for testing oplog idempotency
  • Bug: SERVER-29915: SCRAM-SHA-1 mechanism should respect "y" in gs2-cbind-flag
  • Task: SERVER-29893: Roll Back to Checkpoint: Rename recovery code and make it accessible to both startup and rollback
  • Task: SERVER-29898: Roll Back to Checkpoint: Call recoverToStableTimestamp() under the global X lock
  • Task: SERVER-29897: Roll Back to Checkpoint: Increment the rollback ID
  • Task: SERVER-29894: Roll Back to Checkpoint: Start oplog application during recovery at checkpoint timestamp
  • Task: SERVER-29891: Roll Back to Checkpoint: Call setStableTimestamp() when commit point or last applied changes
  • Task: SERVER-29896: Roll Back to Checkpoint: Write the common point to the oplog truncate after point
  • Improvement: SERVER-29802: Non-atomic applyOps command should not take out a global exclusive lock
  • Task: SERVER-29797: Capability to invoke Hang_analyzer on a remote host
  • Bug: SERVER-29768: Primary does not need to do a complete chunk metadata read in ShardServerCatalogCacheLoader
  • Improvement: SERVER-29743: IDL should generate a default constructor
  • Task: SERVER-29756: Unit tests for OpMsg parsing and serialization
  • Improvement: SERVER-30468: Speed up checking for duplicate error codes
  • Bug: SERVER-30380: $lookup 'let' variables should be available to all nested sub-pipelines
  • Bug: SERVER-30467: Extend $_internalSchemaMinLength and $_internalSchemaMaxLength to count lengths of Unicode strings
  • Task: SERVER-30437: Stop the shard chunk loader from scheduling persistence tasks with mixed version chunks
  • Bug: SERVER-30424: Coverity analysis defect 101903: Dereference before null check
  • Task: SERVER-30443: Create PeriodicBalancerSettingsRefresher on the ServiceContext
  • Task: SERVER-30432: add logicalSessionTimeoutMinutes to isMaster results
  • Task: SERVER-30407: Make findAndModify retryable
  • Bug: SERVER-30445: A non-full validation should also return the number of invalid documents/objects
  • Bug: SERVER-30418: continuous stepdown override should catch the ManualInterventionRequired error code for mapReduce in addition to shardCollection
  • Improvement: SERVER-30401: Simplify UpdateLeafNode::apply interface
  • Bug: SERVER-30394: ftdc file_manager generates an incorrect absolute diagnostic data path for mongos if the logpath is a relative path
  • Improvement: SERVER-29672: Move the CatalogCacheLoader out of the CatalogCache and make it an independent component
  • Bug: SERVER-29694: Read-only shards should not try to persist the collection routing information locally
  • Bug: SERVER-29686: Remove /var/lib/mongodb from mongodb-org[-unstable] deb metapackage
  • Task: SERVER-29667: Fix document refetch step in UUID enabled rollback
  • Bug: SERVER-29641: checkReplicatedDataHashes() throws a TypeError when replSetTest uses mongobridge
  • Improvement: SERVER-29670: Create a server parameter for specifying the level of CollectionCloner parallelization
  • Task: SERVER-29637: make shards obtain UUID for sharded collections from config server on setFeatureCompatibilityVersion: 3.6
  • Task: SERVER-30147: Add collection task queue flush functionality to ShardServerCatalogCacheLoader and replace certain uses of waitForCollectionVersion
  • Task: SERVER-30146: Evergreen scripts for remote hosts: ssh & scp
  • Task: SERVER-30122: Evergreen functions to spawn and terminate EC2 instances
  • Task: SERVER-29586: Create a $_internalSchemaAllElemMatchFromIndex MatchExpression
  • Improvement: SERVER-29617: Use the AsyncResultsMerger to copy documents in CollectionCloner instead of Fetcher
  • Improvement: SERVER-29524: sys-perf: Call infrastructure_provisioning.py instead of infrastructure_provisioning.sh
  • Task: SERVER-29593: Integrate the official JSON Schema test corpus into the unit tests
  • Improvement: SERVER-22760: Sharded aggregation pipelines which involve taking a simple union should merge on mongos
  • Bug: SERVER-27738: Positional operator ($) can choose wrong array element when there is a numerical path component
  • Bug: SERVER-27411: session cache concurrency issues at shutdown
  • Bug: SERVER-27826: Increase the timeout SSLTest.prototype.connectWorked from 30 to 600 seconds.
  • New Feature: SERVER-20782: Support causal consistency with secondary reads in sharded, replicated MongoDB clusters
  • Bug: SERVER-22829: WiredTiger data files world-readable
  • Improvement: SERVER-24550: Error out when db.createUser() is used with wrong syntax
  • Bug: SERVER-30531: nonexistent tests blacklisted
  • Bug: SERVER-30630: Remote hang_analyzer invoked during timeout phase even when the task doesn't have remote processes
  • Improvement: SERVER-30350: Move the RecordStoreValidateAdaptor into its own file from CollectionImpl
  • Improvement: SERVER-30299: MSVC outputs warning 'Call to 'std::copy' with parameters that may be unsafe' in unordered_fast_key_table.h
  • Improvement: SERVER-29974: Comment in checkAuthForRenameCollectionCommand doesn't match behavior
  • Improvement: SERVER-30453: Remove the record_store_validate_adaptor library and move its source into the catalog library
  • Bug: SERVER-30529: serviceExecutorTaskStats totaltimeExecutingMicros should be totalTimeExecutingMicros
  • Bug: SERVER-30527: serviceExecutorTaskStats tasksExecutng should be tasksExecuting
  • Task: SERVER-30721: Remove uses of CIDRException in favor of uassert()

New in MongoDB 3.4.7 (Aug 8, 2017)

  • Fixed in this release:
  • SERVER-29282: BSON Document Size can be exceeded when grouping inserts on SECONDARY nodes
  • SERVER-29568: Enable configuration of OpenSSL cipher suite via setParameter
  • SERVER-29817: Optimize incremental update performance of ChunkManager and CollectionMetadata

New in MongoDB 3.2.10 (Oct 7, 2016)

  • Issues fixed:
  • SERVER-25974: When WT cache utilization is full, application threads can stall for an extended period of time.
  • SERVER-20306: MongoDB with WiredTiger may experience excessive memory fragmentation, leading to swapping and/or out-of-memory errors.
  • SERVER-16801: When updating a field of one numerical type to the same number of different numerical type, update operation considers it as a noop.
  • Sharding:
  • SERVER-23598 Race in config.version intialization
  • SERVER-25516 Add setParameter option to 3.2 to prevent the replica set monitor from ever giving up on monitoring a set
  • SERVER-25527 Send the version of the chunk being moved as part of the shard moveChunk and splitChunk commands
  • SERVER-25574 Remove jstest/core/hashtest.1js
  • SERVER-25602 splitChunk command with out of bound splitKeys fails, but still updates the chunks
  • Replication:
  • SERVER-22136 Attach term metadata to UpdatePosition command
  • SERVER-24254 Wait for nodes to agree on primary in maxSyncSourceLagSecs.js and chaining_removal.js
  • SERVER-24926 replset8.js should call ReplSetTest.awaitReplication() to be consistent with comment in test.
  • SERVER-25946 increase failover limit in election_timing.js
  • Query:
  • SERVER-24320 Planner can attempt to use invalid index when using plan cache due to plan cache key / MatchExpression sorting inconsistency
  • SERVER-24901 rollback5.js should not depend on size storer value to get collection size
  • SERVER-25443 Remove Linux (Decimal Enabled) test variant
  • SERVER-25951 MongoDB 3.2: Report additional metrics in getMore slowms logging
  • Write Operations:
  • SERVER-16801 update considers a change in numerical type to be a noop
  • Aggregation:
  • SERVER-25039 Aggregation can attempt to re-plan after collection has been dropped
  • JavaScript:
  • SERVER-25056 ImplScope should check interruptability against an opctx
  • WiredTiger:
  • WT-2863 Support UTF-8 paths on Windows
  • WT-2865 eviction thread error failure
  • WT-2026 Maximum pages size at eviction too large
  • WT-2221 Document which statistics are available via a “fast” configuration vs. an “all” configuration
  • WT-2233 Investigate changing when the eviction server switches to aggressive mode.
  • WT-2239 Make sure LSM cursors read up to date dsk_gen, it was racing with compact
  • WT-2323 Allocate a transaction id at the beginning of join cursor iteration
  • WT-2843 Fix a bug in recovery if there is no filesystem truncate support
  • WT-2846 Several bugs related to reconfiguring eviction server at runtime
  • WT-2353 Failure to create async threads as part of a wiredtiger_open call will cause a hang
  • WT-2380 Make scripts fail if code doesn’t match style
  • WT-2486 Update make check so that it runs faster
  • WT-2555 make format run on Windows
  • WT-2578 remove write barriers from the TAILQ_INSERT_XXX macros
  • WT-2631 nullptr is passed for parameters marked with attribute non-null
  • WT-2638 ftruncate may not be supported
  • WT-2645 wt dump: push the complexity of collecting metadata into a dump cursor
  • WT-2648 cache-line alignment for new ports
  • WT-2665 Limit allocator fragmentation in WiredTiger
  • WT-2678 The metadata should not imply that an empty value is true
  • WT-2688 configure –enable-python doesn’t check for availability of swig
  • WT-2693 Check open_cursor error paths for consistent handling
  • WT-2695 Integrate s390x accelerated crc32c support
  • WT-2719 add fuzz testing for WiredTiger options and reconfiguration.
  • WT-2728 Don’t re-read log file headers during log_flush
  • WT-2731 Raw compression can create pages that are larger than expected
  • WT-2732 Coverity analysis defect 99665: Redundant test
  • WT-2734 Improve documentation of eviction behavior
  • WT-2737 Scrub dirty pages rather than evicting them
  • WT-2738 Remove the ability to change the default checkpoint name
  • WT-2739 pluggable file systems documentation cleanups
  • WT-2743 Thread count statistics always report 0
  • WT-2744 partial line even with line buffering set
  • WT-2746 track checkpoint I/O separately from eviction I/O
  • WT-2751 column-store statistics incorrectly calculates the number of entries
  • WT-2752 Fixes to zipfian wtperf workload config
  • WT-2755 flexelint configuration treats size_t as 4B type
  • WT-2756 Upgrade the autoconf archive package to check for swig 3.0
  • WT-2757 Column tables behave differently when column names are provided
  • WT-2759 Releasing the hot-backup lock doesn’t require the schema lock.
  • WT-2762 wtstats tool fails if checkpoint runs
  • WT-2763 Unit test test_intpack failing on OSX
  • WT-2764 Optimize checkpoints to reduce throughput disruption
  • WT-2765 wt dump: indices need to be shown in the dump output
  • WT-2766 Don’t count eviction of lookaside file pages for the purpose of checking stuck cache
  • WT-2767 test suite needs way to run an individual scenario
  • WT-2769 Update documentation to reflect correct limits of memory_page_max
  • WT-2770 Add statistics tracking schema operations
  • WT-2772 Investigate log performance testing weirdness
  • WT-2773 search_near in indexes does not find exact matches
  • WT-2774 minor cleanups/improvements
  • WT-2778 Python test suite: make scenario initialization consistent
  • WT-2779 Raw compression created unexpectedly large pages on disk
  • WT-2781 Enhance bulk cursor option with an option to return immediately on contention
  • WT-2782 Missing a fs_directory_list_free in ex_file_system.c
  • WT-2783 wtperf multi-btree.wtperf dumps core on Mac
  • WT-2785 Scrub dirty pages rather than evicting them: single-page reconciliation
  • WT-2787 Include src/include/wiredtiger_ext.h is problematic
  • WT-2788 Java: freed memory overwrite during handle close can cause JNI crash
  • WT-2791 Enhance OS X Evergreen unit test
  • WT-2793 wtperf config improvements
  • WT-2795 Update documentation around read-only configuration
  • WT-2796 Memory leak in reconciliation uncovered by stress testing
  • WT-2800 Illegal file format in test/format on PPC
  • WT-2801 Crash vulnerability from eviction of metadata during checkpoint
  • WT-2803 Add verbose functionality to WT Evergreen tests
  • WT-2804 Don’t read values in a tree without a snapshot
  • WT-2805 Infinite recursion if error streams fail
  • WT-2806 wtperf allocation size off-by-one
  • WT-2807 Switch Jenkins performance tests to tcmalloc
  • WT-2811 Reconciliation asserts that transaction time has gone backwards
  • WT-2812 Error when reconfiguring cache targets
  • WT-2813 small cache usage stuck even with large cache
  • WT-2814 Enhance wtperf to support single-op truncate mode
  • WT-2816 Improve WiredTiger eviction performance
  • WT-2817 Investigate performance regression in develop, add workload to wtperf/runners
  • WT-2818 The page visibility check when queuing pages for eviction is overly restrictive
  • WT-2820 add gcc warn_unused_result attribute
  • WT-2822 panic mutex and other functions that cannot fail
  • WT-2823 support file handles without a truncate method
  • WT-2824 wtperf displays connection and table create configurations twice
  • WT-2826 clang38 false positive on uninitialized variable.
  • WT-2827 checkpoint log_size configuration improvements
  • WT-2828 Make long wtperf tests reflect mongoDB usage
  • WT-2829 Switch automated testing to use enable-strict configure option
  • WT-2832 Python test uses hard-coded temporary directory
  • WT-2834 Join cursor: discrepancy with bloom filters
  • WT-2835 WT_CONNECTION.leak-memory can skip memory map and cache cleanup
  • WT-2838 Don’t free session handles on close if leak memory is configured
  • WT-2839 lint: Ignoring return value of function
  • WT-2840 clang analysis: garbage values
  • WT-2841 Jenkins Valgrind runner is reporting errors in test wt2719_reconfig
  • WT-2847 Merge fair locks into read/write locks.
  • WT-2850 clang 4.1 attribute warnings when building
  • WT-2853 Multi threaded reader writer example shows temporary slowdown or lockup
  • WT-2857 POSIX ftruncate calls should be #ifdef’d HAVE_FTRUNCATE
  • WT-2862 Fix lint error in test case for forced eviction with multiple cursors
  • WT-2866 Eviction server algorithm tuning
  • WT-2867 Review and fix barrier usage in __lsm_tree_close
  • WT-2868 Add sample_interval to checkpoint-stress wtperf config
  • WT-2869 Performance regression on secondaries
  • WT-2870 Rename wtperf checkpoint schema jobs
  • WT-2871 __wt_verbose has the wrong GCC format attributes
  • WT-2872 Recent stuck cache test/stress failures.
  • WT-2873 Refactor CRC32 code
  • WT-2875 Test test_wt2853_perf can run too long under valgrind
  • WT-2876 Extend wtperf to support a log like table
  • WT-2878 Verbose changes affected performance
  • WT-2881 Add -Wpedantic to clang compiler warning flags
  • WT-2883 wiredtiger_open with verbose=handleops recursive loop
  • WT-2885 __wt_checkpoint_signal lint
  • WT-2886 Decide how in-memory configuration and eviction_dirty_target interact
  • WT-2888 Switch functions to return void where possible
  • WT-2892 hot backup can race with block truncate
  • WT-2896 Coverity #1362535: resource leak
  • WT-2897 Checkpoints can become corrupted on failure
  • WT-2901 Add option to disable checkpoint dirty stepdown phase
  • WT-1162 Add latency to Jenkins wtperf tests and plots
  • SERVER-25843 Coverity analysis defect 99856: Redundant test
  • SERVER-25845 Coverity analysis defect 99859: Explicit null dereferenced
  • SERVER-25846 Coverity analysis defect 99861: Dereference after null check
  • GridFS:
  • SERVER-25451 gridfs.js should shard sharded_files_id_n.fs.chunks with key {files_id: 1, n: 1} and unique=true
  • Operations:
  • SERVER-22491 replace db.serverStatus().uptimeEstimate test in dbadmin.js with C++ test
  • SERVER-25080 MongoDB 3.2.8 ignores ulimit in systemd distributions
  • SERVER-25478 Use wtimeout in sh.setBalancerState
  • Build and Packaging:
  • SERVER-12048 Calling “service mongod start” with mongod running prevents “service mongod stop” from working
  • SERVER-19986 clang-format.py lint fails in mci if files were deleted
  • SERVER-24885 The systemd MaxTasks feature can prevent mongod from accepting new connections
  • SERVER-25594 update to latest curator build for repo publishing
  • SERVER-25786 Remove buildscripts/update-vendor-wiredtier
  • SERVER-25793 update curator for s3 improvements
  • SERVER-25815 Remove Ubuntu 14.10 build from v3.2 and v3.0 branch
  • SERVER-25908 Simplify repo.mongodb.(com|org) repository layout.
  • Tools:
  • TOOLS-1035 Don’t create intents for system.profile.metadata.json files
  • TOOLS-1140 tools do not respect readPreference=secondary when connecting to a mongos
  • TOOLS-1223 Mongodump SSL and GSSAPI authentication
  • TOOLS-1268 No numeric version in –version output
  • TOOLS-1277 Backport to v3.2
  • TOOLS-1365 Issue only one ApplyOps cmd per oplog entry
  • Internals:
  • SERVER-22150 multiversion download script should use new feeds rather than dl.mongodb.org
  • SERVER-22368 Parameterize branch in etc/perf.yml
  • SERVER-22496 Add aggregation performance task
  • SERVER-23819 buildlogger client requests should use basic auth instead of digest auth
  • SERVER-24719 Run the Validate hook on the 3.2 branch
  • SERVER-25324 Expose a function in the shell to compare BSON at a byte level
  • SERVER-25348 Parameterize branch in etc/system-perf.yml
  • SERVER-25358 resmoke does not terminate mongod cleanly on Windows
  • SERVER-25391 Update v3.2 and master builders to use the vendored SCons 2.5.0
  • SERVER-25416 killop_own_ops.js should use failpoints instead of long running $where
  • SERVER-25465 Mongos crashing due to segmentation error.
  • SERVER-25578 Update parameter name of reports directory passed in to post run analysis scripts (sys-perf & perf projects)
  • SERVER-25580 New baseline for mongo-perf Q3 2016
  • SERVER-25587 blacklist findAndModify_update_and_grow
  • SERVER-25627 Remove the concurrency_simultaneous suite from v3.2
  • SERVER-25672 Update compile task distro for mongo-perf-3.2, sys-perf-3.2, and mongo-perf-3.0
  • SERVER-25711 Replace occurance of ‘sslspecial’ with ‘sslSpecial’ in v3.2 evergreen.yml
  • SERVER-25784 sys-perf-3.2 project should include “platform” expansion
  • SERVER-25947 jsCore_v33_validate should set multiversion_platform_arch
  • SERVER-26041 Use bsonBinaryEqual in checkDBHashesForReplSet
  • TOOLS-1371 mongorestore assumes admin.system.version only contains authSchema document

New in MongoDB 3.2.9 (Aug 17, 2016)

  • Issues fixed:
  • SERVER-7285: Support systemd in future compatible Ubuntu distributions.
  • WT-2798: Create operations on WiredTiger when journaling is disabled may lead to inconsistent data in the event of a crash.
  • SERVER-17856: On mongod instances, users can run currentOp and killOp on own operations.
  • All issues closed in 3.2.9

New in MongoDB 3.2.8 (Jul 13, 2016)

  • Issues fixed:
  • SERVER-18329: Debian 8(Jessie) packages.
  • SERVER-24580: Improve performance when WiredTiger cache is full.
  • WT-2696: Race condition on unclean shutdown may miss log records with large updates.
  • WT-2706: Race condition on log file switch can cause missing log records.

New in MongoDB 3.2.7 (Jun 27, 2016)

  • Issues fixed:
  • SERVER-24054: JS segmentation fault on load of certain NaNs.
  • SERVER-24058: Connection pool asio doesn’t honor setup timeouts.
  • SERVER-24117: Mongo binaries ELF stack has become executable.

New in MongoDB 3.2.3 (Feb 18, 2016)

  • Highlights:
  • 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 where in some cases, insert operations fails to add the _id field to large documents: SERVER-22167.
  • Increased timeout for querying oplog to 1 minute: SERVER-22456.

New in MongoDB 3.2.1 (Jan 21, 2016)

  • Highlights:
  • Fixed error where during a regular shutdown of a replica set, secondaries may mark certain replicated but yet to be applied operations as successfully applied: SERVER-21868.
  • Improve insert workload performance with WiredTiger on Windows: SERVER-20262.
  • Fixed long-running transactions during chunk moves: SERVER-21366
  • Fixed issues:
  • Task TOOLS-1025: Update tests to conform to ReplSetTest changes
  • Task TOOLS-1021: Change mongo-tools evergreen config to use MongoDB 3.2 for master branch tests
  • Bug TOOLS-1013: stat_discover.js test is flaky (again)
  • Bug TOOLS-1002: oplog_rollover test is flaky
  • Bug TOOLS-982: Missing "from" text in mongorestore status message
  • Improvement TOOLS-954: Add bypassDocumentValidation option to mongorestore and mongoimport
  • Bug TOOLS-944: write concern mongos tests are flaky
  • Task SERVER-22009: Turn on regression tracking for DSI tests on 3.2
  • Task SERVER-22008: Turn on regression tracking for performance projects on 3.2
  • Bug SERVER-21999: sys-perf: fix issue with EVG log file name
  • Bug SERVER-21996: Increase stability of autodiscover_config_rs_from_secondary.js test
  • Bug SERVER-21971: Not possible to elect a primary if non-voting member is ahead (PV0)
  • Bug SERVER-21961: Get rid of the annoying error message in post-step for perf.yml & system_perf.yml
  • Bug SERVER-21955: CleanEveryN hook isn't compatible with MasterSlaveFixture
  • Improvement SERVER-21950: Run concurrency suite on compile variants for DEBUG builds
  • Bug SERVER-21930: Restart oplog query if oplog entries are not monotonically increasing
  • Bug SERVER-21923: ReplSetTest.awaitSecondaryNodes does not propagate supplied timeout
  • Bug SERVER-21920: Use enhanced WiredTiger next_random cursors for oplog stones
  • Bug SERVER-21901: CheckReplDBHash checks the wrong node when dumping docs from missing collections
  • Task SERVER-21893: JS tests that use dbHash incorrectly check number of collections
  • Bug SERVER-21891: perf.yml dependency check misconfigured for misc-wt-mmap-repl-comp
  • New Feature SERVER-21890: Create a flag to allow server realm to be specified explicitly on Windows
  • Bug SERVER-21885: capped_truncate.js cannot be run with --repeat
  • Improvement SERVER-21872: WiredTiger changes for 3.2.1
  • Bug SERVER-21871: Do not run min_optime_recovery.js on ephemeralForTest storageEngine
  • Bug SERVER-21870: Missing space in error message
  • Bug SERVER-21868: Shutdown may not be handled correctly on secondary nodes
  • Bug SERVER-21867: WiredTiger oplog cursor can return repeated segments
  • Bug SERVER-21864: streamline artifact signing procedure to support coherent release process
  • Bug SERVER-21852: kill_cursors.js fails in small_oplog* configurations
  • Bug SERVER-21849: Fix timestamp compare in min_optime_recovery.js
  • Bug SERVER-21848: bulk write operations on config/admin triggers invariant failure
  • Improvement SERVER-21847: log range of operations read from sync source during replication
  • Bug SERVER-21835: Prevent CappedPositionLost workload failures with indexed_insert_base_capped.js
  • Task SERVER-21824: Disable kmip.js test in ESE suite; re-enable once fixed
  • Bug SERVER-21796: fix startup_log.js test to handle git describe versioning
  • Bug SERVER-21795: Do not reschedule more than one liveness timeout callback at a time
  • New Feature SERVER-21793: create v3.2 branch and update evergreen configuration
  • Bug SERVER-21792: Performance regression with directio enabled on Windows with WiredTiger
  • Task SERVER-21786: Fix code coverage gaps in s/query directory exposed by code coverage tool
  • Bug SERVER-21781: Nightly packages are in the wrong repo directories
  • Bug SERVER-21772: findAndModify not captured by Profiler
  • Task SERVER-21768: Remove the 'numCollections' field from dbHash's response
  • Task SERVER-21763: Track "compare" task for performance results as regular regression tasks.
  • Bug SERVER-21752: slow2_wt fails by exhausting host machine's memory
  • Bug SERVER-21750: getMore command does not set "nreturned" operation counter
  • Task SERVER-21737: remove deprecated release process configuration from master branch evergreen configuration
  • Task SERVER-21725: Enable the analysis script move
  • Bug SERVER-21724: Backup role can't read system.profile
  • Improvement SERVER-21719: Add initiateTimeout rsOption for ShardingTest
  • Improvement SERVER-21714: Increase replSetTest.initiate() timeout for FSM tests
  • Bug SERVER-21706: Certain parameters to mapReduce trigger segmentation fault in a sharded cluster
  • Bug SERVER-21704: JS Test single_node_config_server_smoke has race condition
  • Bug SERVER-21667: do not set lastop on clients used by replication on secondaries
  • Task SERVER-21665: Suppress tar output in jstestfuzz tasks
  • Task SERVER-21638: Audit and improve logging in new find/getMore commands code
  • Task SERVER-21637: Add mixed version tests for find/getMore commands
  • Task SERVER-21602: Reduce execution time of cursor_timeout.js
  • Task SERVER-21600: Increase test coverage for killCursors command and OP_KILLCURSORS
  • Task SERVER-21586: Investigate v3.0 mongos and v3.2 cluster compatibility issues in jstests/sharding
  • Bug SERVER-21545: collMod and invalid parameter triggers fassert on dropCollection on mmapv1
  • Bug SERVER-21536: Invariant failure in executor/connection_pool.cpp
  • Task SERVER-21516: Remove dbStats command from readConcern testing override
  • Task SERVER-21500: Include the name of the FSM workload in the WorkloadFailure description
  • Improvement SERVER-21450: Modify MongoRunner to add enableMajorityReadConcern flag based on jsTestOptions
  • Improvement SERVER-21426: Add writeConcern support to benchRun
  • Improvement SERVER-21384: Expand testing for in memory storage engines
  • Improvement SERVER-21248: jstests for fast-failover correctness
  • Task SERVER-21214: Dump config server data when the sharded concurrency suites fail
  • Task SERVER-21164: Change assert to throw in rslib.js's wait loop
  • Task SERVER-21139: Add more basic tests for drop collection
  • Task SERVER-21138: Add more basic tests for dropDatabase
  • Task SERVER-21137: Add more basic tests for movePrimary
  • Task SERVER-21136: Add more basic tests for enableSharding
  • Task SERVER-21135: Add more basic tests for sharded implicit database creation
  • Task SERVER-21134: Add more basic tests for shardCollection
  • Task SERVER-21133: Add more basic test for mergeChunk
  • Task SERVER-21132: Add more basic tests for moveChunk
  • Task SERVER-21076: Write tests to ensure that operations using DBDirectClient handle shard versioning properly
  • Task SERVER-20824: Test for sharding state recovery
  • Task SERVER-13370: Generate Enterprise RPM's for Amazon Linux

New in MongoDB 3.2.0 (Jan 4, 2016)

  • Highlights:
  • New pluggable storage engines optimized for in-memory computing and the most security-sensitive applications
  • Faster business insight with enhanced real-time analytics and search, coupled with seamless connectivity to industry-standard SQL-based BI tools for sophisticated data exploration
  • Simplified data governance with document validation, coupled with GUI-based schema discovery and visualization
  • Improved operational efficiency with enhanced management platforms, continuous uptime across distributed, multi-region deployments, and zero-downtime upgrades

New in MongoDB 3.2.1 RC 2 (Jan 4, 2016)

  • Security:
  • SERVER-21724 Backup role can’t read system.profile
  • SERVER-21824 Disable kmip.js test in ESE suite; re-enable once fixed
  • SERVER-21890 Create a flag to allow server realm to be specified explicitly on Windows
  • Sharding:
  • SERVER-20824 Test for sharding state recovery
  • SERVER-21076 Write tests to ensure that operations using DBDirectClient handle shard versioning properly
  • SERVER-21132 Add more basic tests for moveChunk
  • SERVER-21133 Add more basic test for mergeChunk
  • SERVER-21134 Add more basic tests for shardCollection
  • SERVER-21135 Add more basic tests for sharded implicit database creation
  • SERVER-21136 Add more basic tests for enableSharding
  • SERVER-21137 Add more basic tests for movePrimary
  • SERVER-21138 Add more basic tests for dropDatabase
  • SERVER-21139 Add more basic tests for drop collection
  • SERVER-21366 Long-running transactions in MigrateStatus::apply
  • SERVER-21586 Investigate v3.0 mongos and v3.2 cluster compatibility issues in jstests/sharding
  • SERVER-21704 JS Test single_node_config_server_smoke has race condition
  • SERVER-21706 Certain parameters to mapReduce trigger segmentation fault in a sharded cluster
  • SERVER-21786 Fix code coverage gaps in s/query directory exposed by code coverage tool
  • SERVER-21848 bulk write operations on config/admin triggers invariant failure
  • Replication:
  • SERVER-21248 jstests for fast-failover correctness
  • SERVER-21667 do not set lastop on clients used by replication on secondaries
  • SERVER-21795 Do not reschedule more than one liveness timeout callback at a time
  • SERVER-21847 log range of operations read from sync source during replication
  • SERVER-21868 Shutdown may not be handled correctly on secondary nodes
  • SERVER-21930 Restart oplog query if oplog entries are not monotonically increasing
  • Query:
  • SERVER-21600 Increase test coverage for killCursors command and OP_KILLCURSORS
  • SERVER-21602 Reduce execution time of cursor_timeout.js
  • SERVER-21637 Add mixed version tests for find/getMore commands
  • SERVER-21638 Audit and improve logging in new find/getMore commands code
  • SERVER-21750 getMore command does not set “nreturned” operation counter
  • Storage:
  • SERVER-21384 Expand testing for in memory storage engines
  • SERVER-21545 collMod and invalid parameter triggers fassert on dropCollection on mmapv1
  • SERVER-21885 capped_truncate.js cannot be run with –repeat
  • SERVER-21920 Use enhanced WiredTiger next_random cursors for oplog stones
  • WiredTiger:
  • SERVER-21792 75% performance regression in insert workload under Windows between 3.0.7 and 3.2 with WiredTiger
  • SERVER-21872 WiredTiger changes for 3.2.1
  • Operations:
  • SERVER-21870 Missing space in error message
  • Build and Packaging:
  • SERVER-13370 Generate Enterprise RPM’s for Amazon Linux
  • SERVER-21781 Nightly packages are in the wrong repo directories
  • SERVER-21796 fix startup_log.js test to handle git describe versioning
  • SERVER-21864 streamline artifact signing procedure to support coherent release process
  • Tools:
  • TOOLS-954 Add bypassDocumentValidation option to mongorestore and mongoimport
  • TOOLS-982 Missing “from” text in mongorestore status message
  • Internals:
  • SERVER-21164 Change assert to throw in rslib.js’s wait loop
  • SERVER-21214 Dump config server data when the sharded concurrency suites fail
  • SERVER-21426 Add writeConcern support to benchRun
  • SERVER-21450 Modify MongoRunner to add enableMajorityReadConcern flag based on jsTestOptions
  • SERVER-21500 Include the name of the FSM workload in the WorkloadFailure description
  • SERVER-21516 Remove dbStats command from readConcern testing override
  • SERVER-21665 Suppress tar output in jstestfuzz tasks
  • SERVER-21714 Increase replSetTest.initiate() timeout for FSM tests
  • SERVER-21719 Add initiateTimeout rsOption for ShardingTest
  • SERVER-21725 Enable the analysis script move
  • SERVER-21737 remove deprecated release process configuration from master branch evergreen configuration
  • SERVER-21752 slow2_wt fails by exhausting host machine’s memory
  • SERVER-21768 Remove the ‘numCollections’ field from dbHash’s response
  • SERVER-21772 findAndModify not captured by Profiler
  • SERVER-21793 create v3.2 branch and update evergreen configuration
  • SERVER-21849 Fix timestamp compare in min_optime_recovery.js
  • SERVER-21852 kill_cursors.js fails in small_oplog* configurations
  • SERVER-21871 Do not run min_optime_recovery.js on ephemeralForTest storageEngine
  • SERVER-21901 CheckReplDBHash checks the wrong node when dumping docs from missing collections
  • SERVER-21923 ReplSetTest.awaitSecondaryNodes does not propagate supplied timeout
  • TOOLS-944 write concern mongos tests are flaky
  • TOOLS-1002 oplog_rollover test is flaky

New in MongoDB 3.1.8 Dev (Oct 6, 2015)

  • New/fixed in this release:
  • SERVER-785 Support Filtered (Partial) Indexes
  • SERVER-2227 Per index access stats
  • SERVER-12015 Reenable use of covering indexes with aggregation
  • SERVER-19007 Built-in facility for full-time diagnostic data capture
  • SERVER-19551 Keep “milestones” against WT oplog to efficiently remove old records
  • SERVER-19975 30% performance regression on simple insert workload on primary
  • SERVER-20204 Segmentation fault during index build on 3.0 secondary

New in MongoDB 3.0.6 (Aug 28, 2015)

  • Highlights:
  • Improvements to WiredTiger Stability SERVER-19751, SERVER-19673, and SERVER-19573.
  • Fixed issue with the interaction between SSL and Auditing. SERVER-19538.
  • Fixed issue with aggregation $sort on sharded systems SERVER-19464.

New in MongoDB 3.1.7 Dev (Aug 22, 2015)

  • Bug SERVER-19513: Truncating a capped collection may not unindex deleted documents in WiredTiger
  • Bug SERVER-19573: MongoDb crash due to segfault
  • Bug SERVER-19824: Mongo shell should report that subprograms exited with non-zero exit code if they die …
  • Bug SERVER-19644: Seg Fault on cloneCollection (specifically gridfs)
  • Bug SERVER-19805: MMap memory mapped file address allocation code cannot handle addresses non-aligned to memory mapped granularity size
  • Task SERVER-19819: Update perf.yml to use new mongo-perf release
  • Bug SERVER-19673: Excessive memory allocated by WiredTiger journal
  • Bug SERVER-19131: clusterManager role does not have permission for adding tag ranges
  • Bug SERVER-19674: Fatal error calling createIndex with 2dsphere
  • Bug SERVER-19464: $sort stage in aggregation doesn't call scoped connections done ()
  • Bug SERVER-19348: $mod results are inconsistent with indexing enabled on Infinity, -Infinity, NaN
  • Task SERVER-19502: Generate ARM64 configurations for SpiderMonkey
  • Bug SERVER-13966: LIBDEPS_DEPENDENTS does not resolve library names the same as LIBDEPS
  • Bug SERVER-19349: $type results are inconsistent with indexing enable on Infinity, -Infinity, NaN
  • Bug SERVER-19641: quit() in the shell quickExits from deep in the javascript stack
  • Bug SERVER-19560: Scope::createFunction does not remove invalid functions from cache, leading to segfault
  • New Feature SERVER-19458: Create a utility function to zero memory regions
  • Bug SERVER-19531: Generate SpiderMonkey config for FreeBSD 10.1
  • Task SERVER-19336: Add ESE Tasks to Evergreen
  • Bug SERVER-17980: CatalogManagerLegacy should not allow replica sets as config servers
  • Bug SERVER-19442: ESE- Access violation as result of invalid pointer under low resources simulation
  • Bug SERVER-19374: TTL Monitor does not yield while deleting expired documents
  • Improvement SERVER-19235: CanonicalQuery::canonicalize to use a NamespaceString rather than a std::string
  • Bug SERVER-19403: Provide feedback to RemoteCommandTargeter on NotMaster errors
  • Bug SERVER-19404: Ensure that all places using RemoteCommandTargeter to run PrimaryOnly commands have NotMaster retry logic
  • Improvement SERVER-18997: Server does not validate boolean values in BSON
  • Task SERVER-19371: FSM - Blacklist failing workloads in Replication & Sharded suites
  • Bug SERVER-8843: serverStatus.extra_info.page_faults overflows and goes negative
  • Bug SERVER-19431: The mongo::hasher algorithm is not endian clean
  • Task SERVER-19376: Make SpiderMonkey the default JS Engine
  • Task SERVER-19493: Javascript "Error" objects thrown in the shell should include a "code" field where possible for easier programmatic inspection
  • Task SERVER-19512: Remove jstests/multiVersion/config_version_excludes.js as it tests a deprecated feature
  • Bug SERVER-19508: SpiderMonkey stacktraces lack file names
  • Bug SERVER-19516: MozJS isn't aggresive enough in Garbage Collection
  • Task SERVER-19492: Replace ReplicationExecutor with ThreadPoolTaskExecutor in sharding code
  • Task SERVER-19494: Don't shutdown mongobridge on empty response object
  • Bug SERVER-18951: dassert in waitForWriteConcern fails when w:majority adds j:true with journaling off
  • Improvement SERVER-19504: Remove indexStats command artifacts
  • Task SERVER-19414: Switch to using CatalogManagerReplicaSet if configdb connection string is for a replset
  • Bug SERVER-19526: isCollectionLockedForMode is expensive because it mallocs a lot.
  • Bug SERVER-18913: Coverity analysis defect 72775: Redundant test
  • Improvement SERVER-19391: BSONObjBuilder::appendAsNumber is unused.
  • Bug SERVER-19558: ScopeCache doesn't see cleanup in shutdownServer
  • Task SERVER-19456: Use final designators where appropriate in PlanStages
  • Task SERVER-19289: In jstests, when using CSRS always use storageEngine=wiredTiger
  • Task SERVER-19520: Reduce 32-bit test coverage
  • Improvement SERVER-19529: FSM tests - add cleanupOptions for runWorkloads
  • Bug SERVER-19395: mongos may send write commands over non-sharding aware connections
  • Bug SERVER-19602: Clean up how ShardingTest restarts mongos and mongod processes
  • Task SERVER-19563: Remove DBClientInterface::sayPiggyBack() and related code
  • Task SERVER-19514: Run sharding tests using 2 node CSRS
  • Improvement SERVER-19625: Update evergreen.yml to make jstestfuzz task to run on all linux variants
  • New Feature SERVER-19659: Allow secondaries to work with ReplicationCoordinatorImpl::awaitReplication
  • Bug SERVER-19615: FSM ThreadManager.checkFailed doesn't join threads if failure threshold is exceeded
  • Bug SERVER-19653: Reduce disk writes in rename_collection_dbname_chain.js FSM workload
  • Task SERVER-19587: remove bootstrap codepath from NetworkInterfaceASIO
  • Task SERVER-19067: Warn at creation that autoIndexId:false is deprecated
  • Bug SERVER-19690: ImplScope::exec doesn't respect printResult
  • Bug SERVER-19691: Allow ShardRegistry to be destroyed if 'startup' was never called
  • Bug SERVER-19698: Typo in error message
  • Bug SERVER-19693: Deadlock in map reduce when bailFromJS called
  • Task SERVER-18191: improve heartbeat protocol for the new election protocol
  • Bug SERVER-19455: Move DBClient auth methods to a separate library
  • Improvement SERVER-19307: Use find/getmore commands in bgsync thread
  • Task SERVER-19609: Put shard version on OperationContext
  • Task SERVER-19743: Add Evergreen's execution count to jstestfuzz artifacts
  • Improvement SERVER-15344: Make replWriter thread pool size tunable
  • Improvement SERVER-19433: ESE usability improvements - configuration options
  • Improvement SERVER-19501: Backup/restore tests
  • Improvement SERVER-18522: Majority (WC) writes, even no-ops, must enforce replication WC
  • Bug SERVER-19725: NULL pointer crash in QueryPlanner::plan with $near operator
  • Bug SERVER-19727: BulkWriteError and WriteCommandError capture less info in MozJS than v8
  • Bug SERVER-19597: Overwriting ObjectId leads to null pointer crash
  • Task SERVER-19364: PlanStages shouldn't have to track OperationContext pointers
  • Bug SERVER-19675: committed snapshot not set on secondaries
  • Bug SERVER-18056: 2d nearSphere performance regression
  • Improvement SERVER-19490: Add distributed system performance test into Evergreen loop
  • Improvement SERVER-18925: Merging part of aggregation pipeline should be performed on a random shard to distribute the load
  • Task SERVER-19343: Inject SocketFactory in to NetworkInterfaceASIO
  • Improvement SERVER-19567: Compatibility layer for display of find/getMore commands in currentOp
  • New Feature SERVER-18879: Add "indexOptionDefaults" to createCollection()
  • Improvement SERVER-19183: Allow storage engines to provide optimized random cursors for use by $sample
  • New Feature SERVER-19524: Support for configServer labeling of replica set configurations
  • Task SERVER-19732: Standardize on "configsvr" as the way to mark CSRS replica sets
  • Improvement SERVER-19545: Prohibit config server replica sets from being added as shards
  • Task SERVER-17286: Update mongo shell for find and getMore commands
  • Task SERVER-19606: Upgrade / downgrade of election protocol version
  • Bug SERVER-19711: verify() failure when passing empty 'query' value to runCommand
  • Bug SERVER-19776: wrap rawMongoProgramOutput in assert.soon
  • Improvement SERVER-17895: Server should not clear collection plan cache periodically when write operations are issued
  • Task SERVER-19780: Copy binaries before generating jstestfuzz tests
  • Bug SERVER-19785: stepdown_while_draining.js fails due to inserting on transition to primary
  • Task SERVER-19539: Provide data in the ismaster handshake to identify the config server protocol
  • Bug SERVER-19782: Shutting down during transition to primary can deadlock
  • Improvement SERVER-13535: Full text search tokens needs to strip diacritic marks
  • Bug SERVER-19751: WiredTiger panic halt in eviction-server
  • Bug SERVER-19340: Vendored wiredtiger rand.c fails to compile without -fno-strict-aliasing
  • Bug SERVER-19557: Create Text Index v3
  • Improvement SERVER-18584: A primary should write 'n' op when elected
  • Task SERVER-19880: Upgrade/Dowgrade test - update for Text index V3
  • Bug SERVER-19852: validateWriteConcern should allow w > 1 integer write concerns on collections stored in config server replica sets
  • Task SERVER-19390: Wire Read After Optime support into Replica Set Catalog Manager
  • Task SERVER-19624: Add experimental Decimal128 data type support to mongo/bson layer
  • Task SERVER-19623: Add C++ wrapper around Intel RDFP math library for experimental Decimal128 data type
  • Task SERVER-19626: Add experimental Decimal128 data type support to core expression leaf
  • Task SERVER-19797: Hook up find command in mongos to the ClusterCursorManager
  • Bug SERVER-19835: SubplanStage should not cache plan for an individual $or branch if plans tie or there are no query results
  • Bug SERVER-19731: Make sharding_passthrough suite set up multi-node CSRS with wiredTiger as the storage engine
  • Task SERVER-19448: Implement resmoke.py support for CPP Integration Tests
  • Task SERVER-19447: Implement SCons support for CPP Integration Tests
  • Task SERVER-19449: Implement C++ scaffolding for CPP Integration Tests
  • New Feature SERVER-18872: ESE Key Manager (Multiple Keys)
  • Bug SERVER-19865: race condition in network_interface_asio_test
  • Improvement SERVER-19347: Generic upgrade/downgrade jstest framework
  • New Feature SERVER-18427: Request for log and exponential arithmetic operators in aggregation pipeline
  • New Feature SERVER-19548: Add aggregation expressions for $floor, $ceil, and $trunc
  • Improvement SERVER-13099: Expand set of delimiters recognized by text search tokenizer
  • Improvement SERVER-8423: Text search case folding needs utf-8 support
  • Bug SERVER-19873: Let saslClientAuthenticate handle unrecognized auth mechanisms
  • Improvement SERVER-19570: Shell should issue kill against find command cursors when the cursor object is destroyed
  • Task SERVER-19764: Store the last vote when voting for myself
  • Bug SERVER-19862: authentication code should not depend on DBClient
  • Sub-task SERVER-19213: SERVER-18022 Set enableReplSnapshotThread server param to default true
  • Sub-task SERVER-19212: SERVER-18022 New indexes shouldn't be usable until they are in the committed view
  • Improvement SERVER-14036: Ubuntu Key File belongs to Richard Kreuter
  • Task SERVER-18767: Make find command shard version aware
  • Task SERVER-19665: Find and getMore commands should use a default timeout of 1 second for tailable, awaitData cursors
  • Improvement SERVER-15204: Skip validation for stored geometry if a 2dsphere index exists
  • Bug SERVER-19800: DataSizeChange forces an int into a bool
  • Improvement SERVER-19593: Allow collscans on $snapshot queries when not using MMAP1
  • Improvement SERVER-19463: Add longevity test into Evergreen loop
  • Bug SERVER-19738: Restore current term at startup
  • Task SERVER-19786: Cache term in replication coordinator
  • Bug SERVER-19804: join thread first before attaching repl response metadata
  • Task SERVER-18766: Implement manager for ClusterClientCursor
  • Bug SERVER-19713: verify() failure when specifying $minDistance or $maxDistance without geoNear operator
  • Task SERVER-18771: Implement getMore command on mongos
  • Improvement SERVER-19775: Do not apply the first oplog entry during initial sync
  • Bug SERVER-19728: Invariant failure newCommittedSnapshot > *_currentCommittedSnapshot
  • Task SERVER-19446: adding a special server parameter for majority read concern without replica sets for testing
  • Task SERVER-19222: Add a NetworkInterfaceASIO builder to evergreen
  • Task SERVER-19811: Disable FSM workloads that drop and reuse sharded namespaces
  • Task SERVER-19622: Vendorize Intel DFP math library for 128-bit binary integer decimal support
  • Bug SERVER-19511: Distinct command with no predicate can miss results when distinct field is first key pattern element of partial index
  • Improvement SERVER-19429: ESE usability - improve data file and storageEngine sanity checks
  • Bug SERVER-19694: Distributed lock should retry on duplicate key error creating the lock entry
  • Improvement SERVER-18363: Voters must only sync from other voters
  • New Feature SERVER-19537: Allow replSetInitiate on nodes not started with --replSet
  • Bug SERVER-19848: Don't define 'trunc' in MozJS on windows
  • Task SERVER-19808: Improve stack-trace reports from concurrency suite
  • Bug SERVER-19747: MinKey/MaxKey not printing as JSON in MozJS
  • Bug SERVER-19705: SpiderMonkey error codes overlap with Mongo error codes in thrown user assertions
  • Bug SERVER-19822: Zip file has wrong directory name
  • New Feature SERVER-17953: Implement Driver CRUD API Spec in shell
  • Bug SERVER-19853: Can't use constexpr numeric_limits on msvc in MozJS
  • Bug SERVER-19814: Shell performs getMore with wrong cursor id when "commands" read mode is enabled, for large cursor id values
  • Bug SERVER-19561: Expand pkill targets in evergreen.yml to clean up old lldb and unit test binaries
  • Task SERVER-19834: Use generic pkill target in evergreen.yml to kill all unit test processes
  • Bug SERVER-19682: Prevent JSThread exceptions in concurrency suite when global db is undefined
  • Improvement SERVER-18022: Support "read committed" isolation level where "committed" means confirmed by the voting majority of a replica set
  • Task SERVER-19637: Add election timeout to replica set config
  • Bug SERVER-19810: mongos requires queries on $cmd.sys.inprog to use "admin" database
  • Task SERVER-19155: async auth support in NetworkInterfaceASIO
  • Task SERVER-19627: Add experimental Decimal128 data type support to the MongoDB shell as NumberDecimal
  • Task SERVER-19628: Add experimental Decimal128 data type to update and delete code paths
  • Task SERVER-19629: Add round trip & CRUD JavaScript tests for shell-supported NumberDecimal data type
  • Bug SERVER-19367: Segfault establishing shard connection in Chunk::splitMulti
  • Task SERVER-19889: add ability to set request metadata and read response metadata in the shell
  • Bug SERVER-19466: logOp fassert when primary steps down during a TTL delete
  • Improvement SERVER-8770: Sign RPM packages available via the 10gen yum repository
  • Task SERVER-19820: Update perf.yml to use mongo-perf check script
  • Improvement SERVER-18474: provide core dump on fassert and invariant failures
  • Bug SERVER-18351: 'Invalid epoch' fatal assertion when concurrently dropping and sharding collection
  • Task SERVER-18606: Use find command instead of query for repl syncing
  • Improvement SERVER-19571: Allow configuration of shell read mode with resmoke.py, add "commands" read mode coverage to CI loop
  • Bug SERVER-19664: Reduce disk writes in drop_database.js FSM workload
  • New Feature SERVER-19650: update YML files to tag system/test command types
  • Bug SERVER-19553: Mongod shouldn't use sayPiggyBack to send KillCursor messages
  • Bug SERVER-19612: JSThread exception messages are not printed when using SpiderMonkey
  • Bug SERVER-16021: WT failed to start with "lsm-worker: Error in LSM worker thread 2: No such file or directory"
  • Task SERVER-19439: Implement connect hook interface in NetworkInterfaceImpl and NetworkInterfaceMock
  • Task SERVER-19646: pass ASIO setParameter through to ReplSetTests and ShardingTests via TestData
  • Bug SERVER-19319: CatalogManagerReplicaSet needs to send setShardVersion to primary shard after sharding a collection
  • Bug SERVER-19398: command_user_defined_roles.js incorrectly modifies db and collection names of privileges
  • Bug SERVER-16322: Make sure that RecoveryUnit::commit() can safely throw WriteConflictException
  • Task SERVER-19613: Add build flag to switch on/off experimental Decimal128 data type support
  • Bug SERVER-19856: Register for PRESHUTDOWN notifications on Windows Vista+
  • Bug SERVER-19320: NetworkInterfaceASIO will never send empty Messages
  • Bug SERVER-19951: PlanExecutor::ExecState state in find_cmd.cpp accessed without being initialized
  • Task SERVER-19359: Implement timed task execution with NetworkInterfaceASIO
  • Improvement SERVER-9625: Support many accumulators in aggregation framework as expressions
  • Bug SERVER-19284: Should not be able to create role with same name as builtin role
  • Bug SERVER-19909: Consider election race in restore_term.js
  • Task SERVER-19697: AsyncCommand objects should hold their start time
  • Task SERVER-19899: Mongo-perf analysis script -- Check for per thread level regressions
  • Improvement SERVER-19983: Performance Regression in Mongo-perf Commands.DistinctWithIndexAndQuery
  • Task SERVER-18772: Use ClusterClientCursor framework for OP_QUERY style find on mongos
  • Bug SERVER-19952: System Performance task failed as a system failure
  • Improvement SERVER-19532: WiredTiger changes for MongoDB 3.1.7
  • Improvement SERVER-19554: Return last visible optime in repldata metadata for all commands
  • Bug SERVER-18581: The Ubuntu package should start the mongod with group=mongodb
  • Bug SERVER-20013: Don't blacklist the upstream if its config version is greater
  • Bug SERVER-20001: Coverity analysis defect 73592: PW.USELESS_TYPE_QUALIFIER_ON_RETURN_TYPE
  • Task SERVER-19992: Move ConfigServerMode enum out of server_options.h
  • Improvement SERVER-16398: Remove support for "cursorInfo" command
  • Improvement SERVER-19509: The nproc ulimits are different across packages
  • Bug SERVER-20021: Deadlock between SyncSourceFeedback and ReplicationCoordinator mutexes
  • Improvement SERVER-19877: Change format of accumulator unit tests
  • Improvement SERVER-19308: Basic test coverage for listCommands command
  • New Feature SERVER-19809: Lower frequency of execution for some buildvariants to once per day
  • Improvement SERVER-10160: gen_error_codes.py should generate a js module with symbolic constants for the error codes in the shell.
  • New Feature SERVER-18743: Create a "flaky test finder" buildvariant
  • Bug SERVER-20031: Avoid unexpected primary in protocol_version_upgrade_downgrade.js
  • Task SERVER-19420: Implement Connection Hooking in NetworkInterfaceASIO
  • Bug SERVER-19869: Prevent active CatalogManager from changing while holding a distributed lock
  • Improvement SERVER-15893: root role should be able to run validate on system collections
  • Improvement SERVER-19963: More detailed log information when querying shard info fails
  • Improvement SERVER-19480: Meaningful geoNear specific statistics after eliminating duplicated index scans
  • Task SERVER-19720: add a std::error_category for MongoDB error codes
  • New Feature SERVER-15020: Implement explain for the distinct command
  • Sub-task SERVER-19987: SERVER-19966 Limit the size of the per-session cursor cache
  • Improvement SERVER-19833: Error out when attempting to do committed reads on non-supported storage engines
  • Improvement SERVER-19369: Add String.includes() polyfill
  • Bug SERVER-9686: HexData, UUID, and MD5 in v8 crash process when called with invalid hex string
  • Bug SERVER-16703: Javascript function may incorrectly return undefined when function definition contains "return" keyword
  • Improvement SERVER-19370: String.endsWith() shouldn't use regexp (even escaped)
  • Bug SERVER-19933: check validity of "configsvr:true" at config validation time
  • Improvement SERVER-19890: Fix jstests/replsets/read_committed_no_snapshots.js to correctly get the real last OpTime
  • Bug SERVER-19947: Deadlock between aggregations with sorts on sharded collections and operations requiring MODE_X database locks
  • Improvement SERVER-19421: Refactor FTS to use abstract interfaces for phrase matching
  • Improvement SERVER-19639: Add a Unicode tokenizer and Unicode phrase matcher implementation.
  • Bug SERVER-19944: Apply basic perf optimizations to text index v3
  • Task SERVER-19914: Store config server connection string in ShardRegistry instead of CatalogManager
  • Improvement SERVER-19299: add the ability to pass --setParameter arguments on the command line to resmoke.py
  • Bug SERVER-19380: asio::ip::tcp::resolver::iterator instances should be passed by value
  • New Feature SERVER-19465: Add Unicode data classes to support FTS Unicode Improvements
  • Task SERVER-19221: Conduct async SSL handshake in NetworkInterfaceASIO
  • Task SERVER-19886: Make tests run config servers with 3 member replica sets
  • New Feature SERVER-5811: Make a killCursors command
  • Task SERVER-19736: Add opTime invariant checks when updating cached config server data
  • Bug SERVER-19969: Update config server connection string stored in shard registry on config server replset reconfig
  • Bug SERVER-19522: Capped collection insert rate declines over time under WiredTiger
  • Improvement SERVER-19876: Include host seed list information in ismaster response of removed replica set nodes
  • Bug SERVER-19640: dataSize command parses namespace incorrectly when sharded
  • Bug SERVER-19965: Increase timeout in stepdown_catch_up_opt.js for windows
  • Bug SERVER-20028: replsets/sync_passive2.js on Linux64
  • Bug SERVER-20003: Coverity analysis defect 73585: Dereference after null check
  • Task SERVER-19984: Block read committed reads after metadata changes, rather than returning an error
  • Bug SERVER-20058: mongos deadlock while replacing catalog manager
  • New Feature SERVER-19543: Dynamically change config protocol in mongos and shard servers
  • Improvement SERVER-19893: Generate packages on their own platforms
  • Task SERVER-19830: Liveness detection for downstream members via updatePosition
  • Bug SERVER-19925: move protocolVersion field to top level
  • Bug SERVER-19474: Calling createIndex() can cause the shell to stall
  • Task SERVER-19499: Print out FSM workload schedules in the concurrency suite
  • Improvement SERVER-19450: Change BSONElement::getGtLtOp() to use StringMap rather than a large if-else
  • Improvement SERVER-19478: Save files generated by jstestfuzz in Evergreen
  • Task SERVER-19647: Generate SpiderMonkey config for OpenBSD
  • Bug SERVER-19672: Array functions in shell can cause stall
  • Task SERVER-19749: add char array overload for mongo::optionenvironment::Value constructor
  • Task SERVER-19826: Upgrade node.js version used by jstestfuzz
  • Task SERVER-19861: convert uses of std::chrono::duration::count() to mongo::durationCount()
  • Improvement SERVER-19596: Implicit Circular Dependency with S2 Keys
  • Improvement SERVER-19528: Change validationState to validationAction
  • Bug SERVER-18516: ubuntu/debian packaging : Release files report wrong Codename
  • Improvement SERVER-19838: Remove superfluous member DeleteStageParams::shouldCallLogOp
  • Improvement SERVER-12856: Add createIndexes shell helper
  • Bug SERVER-10152: Second argument of BinData and HexData not checked for type
  • Bug SERVER-8744: NumberInt overflow handling is different in V8 and Spidermonkey
  • Bug SERVER-9973: NumberLong(NumberLong(1)) throws error: Could not convert "NumberLong(1)" to NumberLong
  • Bug SERVER-19631: Reduce the logging level of the mock thread pool executor
  • Bug SERVER-19160: hostInfo for Mac OS has extra characters
  • Task SERVER-19812: Clean up comments in concurrency suite blacklists
  • Bug SERVER-19479: Enterprise Repo build.py AttributeError
  • Improvement SERVER-19807: Remove dead method LiteParsedQuery::isRecordIdMeta()
  • Bug SERVER-18952: Improve formatting of "starting new replica set monitor..." message

New in MongoDB 3.1.5 Dev (Jul 10, 2015)

  • Bug SERVER-17254: WT: drop collection while concurrent oplog tailing may greatly reduce throughput
  • Bug SERVER-18902: Retrieval of large documents slower on WiredTiger than MMAPv1
  • Bug SERVER-19143: race in setting OpDebug ns can cause invalid BSON to be returned from currentOp command
  • Bug SERVER-18858: MatchExpression use-after-free after dropping partial index
  • Bug SERVER-18266: Standardize token-length limits between RLP and Snowball
  • Bug SERVER-18807: rollback should drop dblock when fetching docs over the network
  • Task SERVER-18435: Integrate RS monitor with RemoteCommandTargeterRS
  • Task SERVER-18438: Add a RemoteCommandTargeter to Shard
  • Task SERVER-18576: Enhance upload.py
  • Bug SERVER-19025: add fassertStatusOK to errorcodes.py
  • Improvement SERVER-17308: Replace boost::scoped_ptr with std::unique_ptr
  • Bug SERVER-19055: Cleanup memory in scoped_db_conn_test
  • Bug SERVER-18062: Creating an index on a collection in a non-existent database when connected to mongos throws error
  • Improvement SERVER-18839: Define suites for subsets of unittests from each major area of the codebase
  • Improvement SERVER-18810: FSM - sharding tests using 2 mongos
  • Improvement SERVER-17307: Replace uses of boost::shared_ptr with std::shared_ptr
  • Bug SERVER-18524: Different parsing for RLP index keys and queries leads to missing results
  • Task SERVER-18623: Create basic Executor interface and change ReplicationExecutor to implement it
  • Bug SERVER-18876: Coverity analysis defect 49646: Unchecked return value
  • Bug SERVER-18891: Coverity analysis defect 72756: Unchecked return value
  • Bug SERVER-18863: Coverity analysis defect 72746: PW.PARAMETER_HIDDEN
  • Bug SERVER-18778: Coverity analysis defect 72724: PW.PARAMETER_HIDDEN
  • Task SERVER-18791: Pull count command parsing into a separate library
  • Sub-task SERVER-18800: SERVER-17858 Expand support for $in queries to be answered by partial index
  • Bug SERVER-18552: Delimiters are indexed in text indexes
  • Improvement SERVER-17810: "matchTested" exec stage statistic is misleading
  • Improvement SERVER-17309: Replace std::auto_ptr with std::unique_ptr
  • Task SERVER-19041: Simplify mutex usage
  • Bug SERVER-18978: Fix comment word wrapping indentation
  • Task SERVER-18575: Add clang_format.py
  • Bug SERVER-18679: Wrong key count for reverse indexes in WT
  • Task SERVER-18579: Enforce clang-format in MCI
  • Improvement SERVER-18834: Expose way for how to run jstests specified on resmoke.py command line
  • Improvement SERVER-18756: resmoke.py should write combined report of repeated executions
  • Improvement SERVER-18572: resmoke.py should prefix test log output with a timestamp
  • Task SERVER-19069: Implement getTagsForCollection in the replica set catalog manager
  • Improvement SERVER-18953: Generate debug symbols on OS X
  • Improvement SERVER-9567: Add support for seperate debug info files on ELF
  • Task SERVER-19078: CatalogManager::getChunks should accept sort and limit
  • Bug SERVER-18459: Include third party notices file in enterprise zips
  • Improvement SERVER-18883: Separate user role resolution into own function
  • Improvement SERVER-17854: Allow $or predicates to be indexed by partial indexes
  • Improvement SERVER-18180: Clean up partial_index tests for style and clarity
  • Improvement SERVER-18878: FSM workloads with replication should be completed on secondary before next workload runs
  • Bug SERVER-17199: Fix building on platforms without execinfo.h
  • Task SERVER-18935: dbtests require journaling to be on
  • Bug SERVER-18954: Race in replset_distlock_manager_test can cause it to grab out of scope test mutex
  • Task SERVER-18950: Make LiteParsedQuery return StatusWith
  • Bug SERVER-18903: Unreachable code in DataReplicator::_onOplogFetchFinish
  • Improvement SERVER-18866: make global replication coordinator a decoration on service context
  • Task SERVER-18901: Move QueryFetcher out of data_replicator.cpp and into its own library
  • Task SERVER-17990: KMIP - refactor SSL interface to allow multiple outgoing certificates
  • Task SERVER-19020: Implement getChunks in the replica set catalog manager
  • Task SERVER-18723: Replace boost:: with stdx:: for concurrency types
  • Bug SERVER-15217: v2.6 query plan ranking test "NonCoveredIxisectFetchesLess" relies on order of deleted record list
  • Improvement SERVER-19029: Configure boost thread to more closely model the standard
  • Task SERVER-18167: handle BSON validation in OP_COMMAND/OP_COMMANDREPLY
  • Bug SERVER-18843: resmoke.py should not summarize all previous executions until it finishes
  • Bug SERVER-18859: Logging before dynamic initializers have run in thread_name.cpp leaks memory
  • Bug SERVER-17259: Coverity analysis defect 56350: Dereference null return value
  • Task SERVER-18996: Implement getAllShards for RS Catalog Manager and write accompanying tests
  • Task SERVER-19005: Support C++ death tests which test that the process terminates abnormally
  • Bug SERVER-19033: find command should validate 1st parameter
  • Task SERVER-18815: Shard object lifetime shoud be managed by the ShardRegistry
  • Task SERVER-18947: Implement getCollection in the replica set catalog manager
  • New Feature SERVER-18980: Include wiredtiger_ext.h in mongo integration
  • Bug SERVER-18974: dropCollection fails because setShardVersion request is incorrect
  • Bug SERVER-18976: replset_dist_lock_manager_test deadlock
  • Task SERVER-18780: decrease the timeout for selecting syncsource back to the original 30 seconds in server6733.js
  • Task SERVER-18949: Implement getDatabase in the replica set catalog manager
  • New Feature SERVER-18811: Improve OpenSSL crypto wrapper (Enterprise)
  • Task SERVER-18809: Community portion of ESE project
  • Bug SERVER-18939: Using /localhost to configure mongos causes segfault
  • Bug SERVER-19028: CommandRequest constructor should validate database name
  • Improvement SERVER-18870: AND_SORTED and AND_HASH may never have a non-null filter
  • Task SERVER-18551: Get an Evergreen project running with spidermonkey as the js-engine
  • Improvement SERVER-6686: xtime_get() method is deprecated
  • Bug SERVER-18143: Coverity analysis defect 72592: Argument cannot be negative
  • Bug SERVER-18309: Sparse indexes should not be assigned to {$in: [null, ...]} predicates
  • Task SERVER-18929: Add method to get how many bytes can be written in to ReplyBuilderInterface
  • New Feature SERVER-5044: $stdDev aggregation operator for standard deviation
  • Task SERVER-18292: Implement OP_COMMAND in mongos
  • Task SERVER-18236: Refactor metadata to use OP_COMMAND metadata object
  • Improvement SERVER-18991: Standardize on MONGO_DISALLOW_COPYING
  • Task SERVER-18385: implement dryrun elections
  • Improvement SERVER-17789: Remove options influenced variant directory generation
  • Task SERVER-18464: Move per-shard connection management to Shard
  • Task SERVER-18437: Improve Concurrency of Sharding registry
  • Bug SERVER-18053: Building with the enterprise module should error out if SSL is not enabled
  • Bug SERVER-18910: Path in distribution does not contain version
  • Task SERVER-18943: Test framework for Catalog Manager Replica set
  • Improvement SERVER-18797: Enable FSM sharded replication
  • Bug SERVER-18933: Resmoke doesn't honor --continueOnFailure in ASAN builds
  • Improvement SERVER-17858: Partial indexes should support more complex queries
  • Task SERVER-16912: Complete the implementation of GeoMatchExpression::equivalent()
  • Bug SERVER-13008: Encoding of projection for query plan cache should be type-insensitive
  • Bug SERVER-18376: Interface changes for SERVER-18099 broke C# 1.0 drivers from access to 3.1.x servers
  • Improvement SERVER-18588: Adjust read-after-optime interface
  • Bug SERVER-18736: Coverity analysis defect 72719: Dereference null return value
  • Task SERVER-18632: Sign build artifacts with 3.2 server key
  • Bug SERVER-19110: Ignore failed operations in mixed_storage_version_replication.js
  • Improvement SERVER-19052: Remove sizeStorer recalculations at startup with WiredTiger
  • New Feature SERVER-18898: separate evergreen project for collecting mongo-perf benchmarks
  • Task SERVER-18554: implement OP_COMMAND logging
  • Sub-task SERVER-18391: SERVER-18389 Remove PyYAML installation code from evergreen.yml
  • Task SERVER-19120: switch jscore_op_command to jscore_op_query now that we use OP_COMMAND by default
  • Improvement SERVER-19130: Specify Oplog size for mongo-perf benchmarks running with oplog
  • New Feature SERVER-4589: aggregation: need an array indexing operator
  • New Feature SERVER-14421: Support minDistance for $geoNear aggregation operator
  • Improvement SERVER-14872: Aggregation pipeline project expression operator to concatenate multiple arrays into one
  • Task SERVER-18868: Make startParallelShell() assert that the exit code is 0 by default
  • Bug SERVER-19127: unittest::Test::stopCapturingLogMessages has a sometimes fatal race condition
  • Bug SERVER-18979: Duplicate uassert & fassert codes
  • Bug SERVER-16790: Lengthy pauses associated with checkpoints under WiredTiger
  • Bug SERVER-18714: Coverity analysis defect 72703: Redundant test
  • New Feature SERVER-16737: support eviction_dirty_trigger for WiredTiger
  • Bug SERVER-19070: scons lint fails while downloading clang-format
  • Task SERVER-18153: Implement command repldata responses
  • Task SERVER-19010: support sending and receiving metadata in RemoteCommandRunner
  • Improvement SERVER-18717: compose electionId in OID format from term
  • Task SERVER-19035: Implement OP_COMMAND autodetection in the clientdriver
  • Task SERVER-18570: Add getters for Message _buf and _data
  • Task SERVER-19117: Implement asynchronous replication NetworkInterface
  • Task SERVER-19164: Enable /bigobj compiler option for Windows debug builds
  • Bug SERVER-18086: canonical_query_test helper parseNormalize() keeps pointers to memory inside freed BSONObj
  • Bug SERVER-15017: benchRun might return incorrect stats values
  • Bug SERVER-19004: mongos segfault with master nightly in Jenkins
  • Bug SERVER-17078: show databases taking extraordinarily long with wiredTiger
  • Task SERVER-18036: DataReplicator: Add steady state skeleton
  • Bug SERVER-19079: WiredTiger changes for MongoDB 3.1.5
  • Sub-task SERVER-19016: SERVER-18436 RS Catalog Manager implementation of user management command running
  • Sub-task SERVER-19021: SERVER-18436 RS Catalog Manager implementation of special config-only write methods (logAction, logChange, and applyChunkOpsDeprecated)
  • Sub-task SERVER-18596: SERVER-18525 Implement lock expiration takeover for replSets distlock manager
  • Sub-task SERVER-18589: SERVER-18525 Implement Dist Lock Catalog
  • Bug SERVER-17386: Cursor cache causes excessive memory utilization in WiredTiger
  • Bug SERVER-18838: DB fails to recover creates and drops after system crash
  • Task SERVER-19115: Clean up how we launch async operations in catalog manager unit tests to prevent deadlocks on assertion failures
  • Bug SERVER-18911: Update source tarball push
  • Bug SERVER-18962: Fatal assertion on profiling-enabled secondary when dropping system.profile collection on primary
  • Bug SERVER-18829: Cache usage exceeds configured maximum during index builds under WiredTiger
  • Bug SERVER-2454: Queries that are killed during a yield should return error to user instead of partial result set
  • Bug SERVER-19059: mismatch in protocolVersion field
  • Bug SERVER-19051: Cleanup memory allocated by SSLThreadInfo
  • Bug SERVER-19034: log command failures at level 1
  • Bug SERVER-19040: WhereMatchExpression::shallowClone can leak memory during interruption
  • Bug SERVER-19046: myTerminate terminate handler self deadlocks when re-entered
  • Bug SERVER-18977: Initscript does not stop a running mongod daemon
  • Task SERVER-17988: KMIP - client messaging API implementation
  • Bug SERVER-18485: Missing language aliases for experimental RLP languages
  • Improvement SERVER-19054: Don't be too chatty about periodic tasks taking a few ms
  • Improvement SERVER-18662: Refactor SSLManager's Constructor for Better Memory Management
  • Improvement SERVER-3495: Include sparse/attr in explain output
  • Bug SERVER-18873: Wrong value used in applyUntilAndPause uassert message
  • Improvement SERVER-15732: Abort election if term increases
  • Task SERVER-19002: Remove variantdir options from evergreen yaml files
  • Bug SERVER-18881: Limit with explain("executionStats") has limitAmount as 0
  • Improvement SERVER-9435: mongoutils::str::stripTrailing() is misnamed
  • Bug SERVER-18830: Explain on near query with limit leaves out last search interval
  • Bug SERVER-18894: OSX SSL builds should use unique filename
  • Bug SERVER-18998: UnboundLocalError when building with --sanitize=thread and without --llvm-symbolizer
  • Improvement SERVER-18501: Improve error message when server fails to start due to unsupported text index language
  • Improvement SERVER-10176: Implement $abs (absolute value) operator for aggregation framework
  • Improvement SERVER-19106: remove 'extra' variable from OpDebug
  • Question SERVER-18795: db.printSlaveReplicationInfo()/rs.printSlaveReplicationInfo() can not work with ARBITER role
  • Improvement SERVER-18660: Add C++11 final and override specifiers where appropriate in aggreggation classes
  • Improvement SERVER-19135: Tune default cache size settings for WiredTiger
  • Bug SERVER-19045: don't throw non-exceptions
  • Bug SERVER-18446: Improve error message when RLP's processBuffer function fails
  • Bug SERVER-18574: Typo in RLP error message when failing to create language context
  • Bug SERVER-18578: ErrorCodes::InternalError used for public facing messages in RLP code
  • Bug SERVER-18397: Lower the log level of the "Skipping RLP Initialization" message
  • Improvement SERVER-18502: Remove unused RLP declarations

New in MongoDB 3.1.4 Dev (Jun 17, 2015)

  • Bug SERVER-18213: Lots of WriteConflict during multi-upsert with WiredTiger storage engine
  • Bug SERVER-17923: Creating/dropping multiple background indexes on the same collection can cause fatal error on secondaries
  • Bug SERVER-18629: WiredTiger journal system syncs wrong directory
  • Bug SERVER-18316: Database with WT engine fails to recover after system crash
  • Sub-task SERVER-18526: SERVER-18525 Create mock for command exec and targeter
  • Task SERVER-18039: Add Initial Sync Skeleton to DataReplicator
  • Sub-task SERVER-18491: SERVER-17858 Add support for $or query to be answered by partial index
  • Sub-task SERVER-18591: SERVER-18525 Implement background ping and unlock for replSets distlock manager
  • Bug SERVER-18739: Replication unit tests fail when run in parallel
  • Bug SERVER-18695: ElectionWinnerDeclarer::Algorithm::processResponse can call getValue() on non-OK StatusWith
  • Task SERVER-18478: Clean up AuthzManagerExternalState
  • Task SERVER-18291: Create a variant of the jscore suite for OP_COMMAND
  • Improvement SERVER-18748: Move cursor response generation functions to be under query
  • Improvement SERVER-18611: add non-static data member initializers to LiteParsedQuery
  • Improvement SERVER-18515: Make OperationContext useful in mongos
  • Bug SERVER-18804: Invariant failure when running explained update against config or admin db in sharded cluster
  • Improvement SERVER-13990: Improved warning for low cardinality keys
  • Bug SERVER-18580: jsobj (dbtest): JsobjTests::OIDTests::FromDate failure
  • Improvement SERVER-18365: Get rid of MatchExpression::NIN match type
  • Improvement SERVER-14995: OperationContext should have a constant id for whole lifetime
  • Task SERVER-17660: Rename index option "filter" to "partialFilterExpression"
  • Task SERVER-18152: V1 repl election protocol commands
  • Task SERVER-18216: Add term to oplog
  • Task SERVER-18033: Data Replicator: Pause/Resume
  • Bug SERVER-18600: resmoke.py should avoid assigning duplicate ports to mongod processes
  • Improvement SERVER-16265: Add query details to getmore entry in profiler and db.currentOp()
  • Bug SERVER-18673: ScopedThreads used by parallel suite do not get TestData configuration
  • Improvement SERVER-18799: Reduce flakiness of max_time_ms.js
  • Bug SERVER-17526: option to allow disabling job object creation in smoke.py for win32
  • Bug SERVER-18582: Coverity analysis defect 72708: PW.PARAMETER_HIDDEN
  • Improvement SERVER-18495: Enable FSM replication tests
  • Bug SERVER-18813: ClusterPipelineCmd can fail to throw RecvStaleConfigException when merging cursors
  • Bug SERVER-18827: repl1.js repl6.js failure
  • Improvement SERVER-18280: ReplicaSetMonitor should use electionId to avoid talking to old primaries
  • Bug SERVER-18157: Coverity analysis defect 72637: Inferred misuse of enum
  • Bug SERVER-18806: CPU profiler commands cannot find gperftools header files
  • Task SERVER-18462: Apply FSM capped collection patch
  • Task SERVER-18032: Data Replicator: flushAndPause
  • Task SERVER-18563: DataReplicator: Limit the buffered ops size
  • Bug SERVER-18461: Range predicates comparing against a BinData value should be covered, but are not in 2.6
  • Bug SERVER-6826: Potential memory leak in ConnectionString::connect
  • Bug SERVER-18737: Balancer::run can call getValue() on non-OK StatusWith
  • Bug SERVER-18617: resmoke.py should not error when attempting to tear down fixtures which have not been set up.
  • Improvement SERVER-18605: Include thread id in log messages
  • Task SERVER-17607: Hook OP_COMMAND/OP_COMMANDREPLY into mongod command dispatch/response logic
  • Task SERVER-18127: Get rid of the ConfigServer class and global configServer variable
  • Bug SERVER-6801: aggregation $substr expression can output invalid UTF8
  • Bug SERVER-18504: "Lock for createDatabase is taken" triggered by mongorestore restoring multiple collections in parallel
  • Improvement SERVER-18371: Add SSL library config detection
  • Improvement SERVER-18667: Remove the ReplicaSetMonitor remembered seed list
  • Improvement SERVER-18007: StatusWith should work with non-default constructible T
  • Task SERVER-17575: Handle BSONObj size limits for find/getMore commands
  • Task SERVER-18254: implement heartbeat protocol portion of the new election protocol
  • Task SERVER-18569: Get ASIO vendored into third_party on master
  • Task SERVER-18848: enable perf statistics collection in evergreen
  • Bug SERVER-18825: dropDatabase command provides no indication of whether database existed
  • Improvement SERVER-18621: Remove concurrency_compat tests for FSM
  • Task SERVER-18297: replace all uses of db.$cmd.findOne() with db.runCommand in shell js and jstests
  • Bug SERVER-18669: primary should step down if it sees a higher term in new consensus protocol
  • Improvement SERVER-18445: Define the aggregation suite to include everything in jstests/aggregation/bugs/, and remove jstests/aggregation/testbugs.js
  • Task SERVER-17608: Implement OP_COMMAND/OP_COMMANDREPLY in the shell
  • Improvement SERVER-4444: Make replica sets (Applier) more testable
  • Bug SERVER-18481: Fix tcmalloc patch to be upstream-able
  • Bug SERVER-18801: multi_host_query_test suite is non-deterministic
  • Bug SERVER-18482: db.currentOp(True) does not return client information on idle connections
  • Bug SERVER-18738: FindAndModifyCommand::run can create an invalid StatusWith
  • Task SERVER-18599: resmoke.py should wait longer for mongod to start
  • Improvement SERVER-18664: Refactor command error handling
  • Bug SERVER-18355: awaitReplication may not wake up and timeout when maxTimeMs runs out.
  • Improvement SERVER-18487: shell helper getCollectionInfos should take optional query
  • Improvement SERVER-18016: Add Data Replicator Applier skeleton
  • Improvement SERVER-18031: Data Replicator : resync
  • Improvement SERVER-17310: Provide stdx polyfills for std:: implementation of boost concurrency types
  • Improvement SERVER-18215: DataReplicator Applier: Always disable unique index constraints
  • Improvement SERVER-18486: delete copy constructor/assignment operator in MONGO_DISALLOW_COPYING
  • Task SERVER-18634: Move legacy catalog manager schema upgrade code inside CatalogManagerLegacy
  • Task SERVER-18035: Data Replicator: Refactor Rollback Code
  • Bug SERVER-17747: FreeBSD 11.0-CURRENT build issue
  • Improvement SERVER-18444: Improve explain output of aggregation command in sharded cluster
  • Bug SERVER-18514: Improve Multi-Word Term Search performance with RLP
  • Bug SERVER-18527: Coverity analysis defect 72699: PW.PARAMETER_HIDDEN
  • Bug SERVER-18635: transitioning_to_and_from_WT.js should test upgrading from 3.0 to 3.1.x
  • Task SERVER-18587: Move ReadPreference to a separate library
  • Improvement SERVER-18499: Move ConfigDiffTracker to a separate .cpp file
  • Improvement SERVER-17664: Add collection/oplog Fetcher to Data Replicator
  • Bug SERVER-8728: jstests/profile1.js is a race and fails randomly
  • Bug SERVER-18764: Only use elapsedMillis when command succeeds
  • Bug SERVER-18129: Coverity analysis defect 72415: Unchecked return value
  • Bug SERVER-13237: benchRun should use a thread-safe random number generator
  • Sub-task SERVER-18390: SERVER-18389 Check dbhash of all databases during core_small_oplog and core_small_oplog_rs
  • Bug SERVER-18178: Fix mr_drop.js test to not fail from nondeterministic collection drop timing
  • Task SERVER-18037: DataReplicator Applier: add applyUntilAndPause behavior
  • Bug SERVER-18792: Secondaries fassert when replicating createCollection op with missing size value
  • Task SERVER-17861: Change default for --storageEngine in development release
  • Task SERVER-17577: Allow the query system to make use of differentiating between batchSize and limit
  • Task SERVER-17774: Cleanup the parsing of ChunkType and move it under catalog/
  • Sub-task SERVER-18590: SERVER-18525 Implement lock & unlock for replSets distlock manager
  • Task SERVER-18616: Rename remoteCommandExecutor to remoteCommandRunner
  • Improvement SERVER-7656: Optimize aggregation on sharded setup if first stage is exact match on shard key
  • Task SERVER-18184: Add awaitData support to getMore command
  • Bug SERVER-16311: WiredTiger: lsm-worker: LSM metadata write: Cannot allocate memory
  • Improvement SERVER-17329: Improve management of server version in build system
  • Improvement SERVER-17782: Generate source tarballs with pre-interpolated version metadata files from SCons
  • Bug SERVER-18573: Change the casing of the basisTech.RootDirectory YAML config option
  • Improvement SERVER-18597: Add support for dumping ASan code coverage data
  • Task SERVER-18568: Remove ConnectionString::PAIR
  • Bug SERVER-18529: registerRlpLanguages return code is ignored in RLP initializer
  • Bug SERVER-16741: Unable to create wiredTiger database with name containing ASCII control character with directoryperdb
  • Task SERVER-18798: Move FindAndModifyRequest to the request/response library
  • Bug SERVER-18696: Typo in RLP error message when failing to initialize RLP environment
  • Bug SERVER-18423: Typo in aggregation $map and $filter error messages

New in MongoDB 3.0.4 (Jun 17, 2015)

  • Fix missed writes with concurrent inserts during chunk migration from shards with WiredTiger primaries: SERVER-18822
  • Resolve write conflicts with multi-update updates with upsert=true with the Wired Tiger Storage engine: SERVER-18213
  • Fix case where secondary reads could block replication: SERVER-18190
  • Improve performance on Windows with WiredTiger and documents larger than 16kb: SERVER-18079
  • Fix issue where WiredTiger data files are not correctly recovered following unexpected system restarts: SERVER-18316

New in MongoDB 3.0.3 (May 13, 2015)

  • Highlights:
  • Deprecate db.eval() and add warnings: SERVER-17453
  • Fix potential for abrupt termination with the Windows service stop operation: SERVER-17802
  • Fix crash caused by update with a key too large to index on WiredTiger and RocksDB storage engines: SERVER-17882
  • Remove inconsistent support for mapReduce in eval environment: SERVER-17889
  • Fixed issues:
  • Task SERVER-18344: logs should be sent to updated logkeeper server
  • Bug SERVER-18304: duplicates on FindAndModify with remove option
  • Bug SERVER-18302: remove test buildlogger instance
  • Bug SERVER-18299: Use ld wrapper for compiling Enterprise GO tools in RHEL 5
  • Task SERVER-18293: ASAN tests should run on larger instance size
  • Bug SERVER-18290: Adding a read role for a user doesn't seem to propagate to secondary until restart
  • Bug SERVER-18262: setup_multiversion_mongodb should retry links download on timeouts
  • Bug SERVER-18239: dumpauth.js uses ambiguous --db/--collection args
  • Bug SERVER-18229: Smoke.py with PyMongo 3.0.1 fails to run certain tests
  • Bug SERVER-18211: MongoDB fails to correctly roll back collection creation
  • Bug SERVER-18205: WiredTiger changes for MongoDB 3.0.3
  • Bug SERVER-18192: Crash running WiredTiger with "cache_resident=true"
  • Bug SERVER-18169: Regression: Auth enabled arbiter cannot be shutdown using command
  • Bug SERVER-18140: Allow getParameter to be executed locally against an arbiter in an authenticated replica set
  • Bug SERVER-18111: mongod allows user inserts into system.profile collection
  • Bug SERVER-18087: index_retry.js and index_no_retry.js not checking for presence of "progress" field in currentOp() result
  • Improvement SERVER-18082: Change smoke.py buildlogger command line options to environment variables
  • Bug SERVER-18073: Fix smoke.py to work with pymongo 3.0
  • Bug SERVER-18051: OpenSSL internal error when using SCRAM-SHA1 authentication in FIPS mode
  • Bug SERVER-18021: Allow serverStatus to be executed locally against an arbiter in an authenticated replica set
  • Bug SERVER-18014: Dropping a collection can block creating a new collection for an extended time under WiredTiger
  • Bug SERVER-17998: Ignore socket exceptions in initial_sync_unsupported_auth_schema.js test
  • Bug SERVER-17961: THIRD-PARTY-NOTICES.windows needs to be updated
  • Bug SERVER-17951: db.currentOp() fails with read preference set
  • Improvement SERVER-17939: Backport mongo-rocks updates to v3.0 branch
  • Bug SERVER-17908: Allow getCmdLineOpts to be executed locally against an arbiter in an authenticated replica set
  • Bug SERVER-17907: B-tree eviction blocks access to collection for extended period under WiredTiger
  • Improvement SERVER-17892: Explicitly turn checksum on for all collections/indexes in WiredTiger by default
  • Bug SERVER-17889: Using eval command to run mapReduce with non-inline "out" option triggers fatal assertion failure
  • Bug SERVER-17882: Update with key too large to index crashes WiredTiger/RockDB secondary
  • Bug SERVER-17835: Aggregation geoNear deprecated uniqueDocs warning
  • Bug SERVER-17832: Memory leak when MongoD configured with SSL required and handle insecure connection
  • Bug SERVER-17820: Windows service stop can lead to mongod abrupt termination due to long shutdown time
  • Bug SERVER-17815: Plan ranking tie breaker is computed incorrectly
  • Bug SERVER-17812: LockPinger has audit-related GLE failure
  • Bug SERVER-17780: Init script sets process ulimit to different value compared to documentation
  • Bug SERVER-17761: RestAdminAccess/NoAdminAccess objects leak at shutdown
  • Bug SERVER-17749: collMod usePowerOf2Sizes fails on mongos
  • Improvement SERVER-17745: Improve dirty page estimation in mmapv1 on Windows
  • Bug SERVER-17730: Parsing of Variables on Windows doesn't respect windows conventions
  • Improvement SERVER-17694: support RPATH=value in top-level SConstruct
  • Improvement SERVER-17591: Add SSL flag to select supported protocols
  • Bug SERVER-17465: --use-system-tcmalloc does not support tcmalloc setParameters and extension
  • Task SERVER-17453: warn that db.eval() / eval command is deprecated
  • Improvement SERVER-17273: Add support for secondaryCatchupPeriodSecs to rs.stepdown shell helper
  • Bug SERVER-16987: sh.getRecentMigrations shows aborted migration as success
  • Bug SERVER-16636: Deadlock detection should check cycles for stability or should be disabled
  • Bug SERVER-16073: Allow disabling SSL Ciphers via hidden flag: sslCipherConfig
  • Improvement SERVER-12235: Don't require a database read on every new localhost connection when auth is on
  • Improvement SERVER-9220: allow more than two values in the coordinate-array when using 2dsphere index

New in MongoDB 3.1.2 Dev (Apr 30, 2015)

  • Bug SERVER-17972: basic.js/basicPlus.js in the parallel suite and durability_passthrough are broken
  • Bug SERVER-17689: Server crash during initial replication sync
  • Bug SERVER-17907: B-tree eviction blocks access to collection for extended period under WiredTiger
  • Bug SERVER-18201: disk/repair5.js fails intermittently
  • Task SERVER-17723: Sharding catalog cache
  • Bug SERVER-17832: Memory leak when MongoD configured with SSL required and handle insecure connection
  • Improvement SERVER-18064: Move shard.cpp under the sharding client library
  • Improvement SERVER-18072: Pull ShardingConnectionHook into its own library
  • Improvement SERVER-18080: Move cluster commands out of mongoscore
  • Bug SERVER-17961: THIRD-PARTY-NOTICES.windows needs to be updated
  • Bug SERVER-17964: sharding_jscore_passthrough.js test should only start with one shard
  • Task SERVER-17775: Cleanup the parsing of ShardType and move it under catalog/
  • Bug SERVER-18051: OpenSSL internal error when using SCRAM-SHA1 authentication in FIPS mode
  • Improvement SERVER-18101: Remove usage of default_version.cpp
  • Bug SERVER-17815: Plan ranking tie breaker is computed incorrectly
  • Bug SERVER-17455: Configure checks for __atomic and __sync should verify all required functions
  • Bug SERVER-15901: Cleanup unused locks on the lock manager
  • Bug SERVER-17447: Failed to build on Linux i686 with clang
  • Bug SERVER-17514: Don't close handles until a threshold of in-use handles has been reached
  • Improvement SERVER-17781: Add SCons Variables for C and C++ compiler
  • Improvement SERVER-17909: move RunOnAllShardsCommand to a separate file
  • Task SERVER-17620: RLP Tokenizer (includes C++ unit tests)
  • Improvement SERVER-17770: CollectionLock::relockWithMode() shouldn't relock database
  • Sub-task SERVER-17876: SERVER-17865 Coverity analysis defect 71768: PW.USELESS_TYPE_QUALIFIER_ON_RETURN_TYPE
  • Bug SERVER-17328: Add class invariant that collection exists to MultiPlanStage/SubplanStage/CachedPlanStage
  • Improvement SERVER-17986: Allow Variables based configuration of the ENV scons variable
  • Task SERVER-17621: RLP English Testability hooks & JS unit tests
  • Improvement SERVER-17993: Stop using end cursor in WiredTigerIndexCursors
  • Task SERVER-18070: Split ConnectionString out of dbclientinterface and into its own file
  • Improvement SERVER-17718: change showDiskLoc to showRecordId
  • Bug SERVER-18224: jsCore_small_oplog test times out on Ubuntu with RocksDB
  • Task SERVER-17968: Move configServer.allUp to the catalog manager
  • Task SERVER-17774: Cleanup the parsing of ChunkType and move it under catalog/
  • Bug SERVER-17900: decorable compilation warnings on VS2013
  • Bug SERVER-18199: WiredTiger changes for MongoDB 3.1.2
  • Task SERVER-17932: Ensure passthrough tests are resilient to the tests they run overriding global variables
  • Improvement SERVER-17880: Convert OpTime -> Timestamp, make new OpTime
  • Task SERVER-17938: Don't send test output to /dev/null in sync6.js test
  • Bug SERVER-17901: Memory leak in IndexCatalog::_isSpecOk()
  • Bug SERVER-17917: Config DB gets updated even though the user has no permissions
  • Task SERVER-17931: change downgrade_replset.js to use latest stable instead of 2.6
  • Task SERVER-18024: Move collection metadata manipulation under the catalog manager
  • Task SERVER-18055: Move legacy config server upgrade to the legacy catalog manager
  • Task SERVER-18009: Move collection drop to the catalog manager
  • Improvement SERVER-17897: Add a way to opt out of building modules
  • Bug SERVER-18078: logOp fassert when running mapReduce during primary step-down
  • Bug SERVER-17898: Intermittent config server check failures (uncovered by 4_upgrade_cluster.js)
  • Bug SERVER-17918: mixed_storage_version_replication.js
  • Bug SERVER-18147: Take distributed lock on database creation
  • Sub-task SERVER-17874: SERVER-17865 Coverity analysis defect 20291: PW.PARAMETER_HIDDEN
  • Improvement SERVER-15207: Return errors from commands during replication
  • Bug SERVER-17933: Invalid database name check should not cause the connection to be closed
  • Task SERVER-18110: Add Reporter to Data Replicator
  • Bug SERVER-17962: turn on task stepback for mongodb-master
  • Sub-task SERVER-17867: SERVER-17865 Coverity analysis defect: Unchecked return value
  • Improvement SERVER-14750: Convert RPM and DEB mongod.conf files to new YAML format
  • Bug SERVER-15047: Timestamp class relies on undefined behavior
  • Task SERVER-17606: Implement OP_COMMAND/OP_COMMANDREPLY message serialization/deserialization
  • Task SERVER-17450: Replace all instances of startMongod in jstest code with MongoRunner.runMongod
  • Task SERVER-17800: remove dead auditing functions for pseudo-commands
  • Bug SERVER-18176: Add RLP tasks to MCI
  • Improvement SERVER-17802: add fassertStatusOK for StatusWith
  • New Feature SERVER-17957: Create OpenSSL EVP crypto wrapper for AES
  • Improvement SERVER-15225: CachedPlanStage should execute for trial period and re-plan if query performs poorly
  • Bug SERVER-17866: Make minimum Windows build version Vista/2008
  • Task SERVER-18121: Move action logging to the catalog manager
  • Bug SERVER-17817: Consolidate Client, ClientBasic and ClientInfo into one type
  • Improvement SERVER-18108: catch boost::exception in our terminate handler
  • Improvement SERVER-10909: Replace jstest calls to MongodRunner
  • Improvement SERVER-18023: Don't await commit when applying logops in initial sync
  • Task SERVER-18071: mongosGlobalParams.configdbs should be a ConnectionString, not a vector of host strings
  • Improvement SERVER-18177: _getReplicationMode_inlock is both misleading and unnecessary as no mutex is required to read _replMode
  • Sub-task SERVER-17875: SERVER-17865 Coverity analysis defect 48577: Redundant test
  • Bug SERVER-18052: Race condition in collection_cloner_test
  • Task SERVER-17848: Use the catalog manager to query shards in a sharded cluster
  • Bug SERVER-17566: Remove PCRE defines from SConstruct
  • Task SERVER-17894: Add Collection Cloner to Data Replicator
  • Improvement SERVER-17823: Raise compiler minimum check to VS2013 Update 4
  • Improvement SERVER-17635: Improve SortedDataInterface::Cursor API
  • Task SERVER-17657: Ensure filter/sparse combination is illegal
  • Bug SERVER-18054: Crash when running findAndModify against non-existent collection
  • Improvement SERVER-16063: Rewrite findAndModify
  • Bug SERVER-17946: Segfault when running sharding dbtest
  • Sub-task SERVER-17868: SERVER-17865 Coverity analysis defect 17143: Resource leak
  • New Feature SERVER-17919: Add support for emitting a compilation database from SCons
  • Sub-task SERVER-17870: SERVER-17865 Coverity analysis defect 29897: Copy without assign
  • Task SERVER-18122: Move sharding global settings retrieval to the catalog manager
  • Improvement SERVER-7775: Make special commands (inprog, killop, unlock) go through the standard command codepath
  • Improvement SERVER-17496: Cleanup and modularize sharding code
  • Bug SERVER-17034: Deadlock between poorly-formed copydb and reading admin.system.users for localhost exception check
  • Improvement SERVER-17633: Public static methods in Explain class should take in-arguments as const
  • Improvement SERVER-17573: move collection creation OpObserver::onCreateCollection down into createCollection, et cetera
  • Task SERVER-18133: Make LogstreamBuilder truly movable
  • Task SERVER-18015: Add Database Cloner to Data Replicator
  • Task SERVER-18104: Prevent mongos from starting when pointing to a standalone config server
  • Task SERVER-17969: Move shardCollection to the catalog manager
  • Improvement SERVER-17910: Remove unused test in db.cpp
  • Improvement SERVER-17971: Improve test infrastructure to allow ShardingTest to use a replica set for the config servers
  • Improvement SERVER-17803: Constructing an error StatusWith should not require copy of Status/std::string
  • Improvement SERVER-15860: Switch replication metadata ops to be replication-specific, rather than using commands
  • Task SERVER-17755: Remove legacy code from build system
  • Bug SERVER-17954: Coverity analysis defect 72085: Redundant test
  • Task SERVER-17760: moveChunk, mergeChunk, splitChunk commands should use catalog manager to connect to config servers
  • Task SERVER-17619: RLP library loading
  • Task SERVER-17772: listDatabases command should use the catalog manager
  • New Feature SERVER-17965: Allow using a single node replica set as a config server
  • Improvement SERVER-17662: Add initial Data Replicator interface
  • Bug SERVER-17948: Coverity analysis defect 72088: Redundant test
  • Improvement SERVER-17864: boost::optional triggers spurious -Wmaybe-uninitialized warnings on g++
  • Improvement SERVER-18050: handle boost exceptions in exceptionToStatus
  • Bug SERVER-17951: db.currentOp() fails with read preference set
  • Bug SERVER-17889: Using eval command to run mapReduce with non-inline "out" option triggers fatal assertion failure
  • Bug SERVER-17882: Update with key too large to index crashes WiredTiger/RockDB secondary
  • Bug SERVER-17908: Allow getCmdLineOpts to be executed locally against an arbiter in an authenticated replica set
  • Improvement SERVER-17591: Add SSL flag to select supported protocols
  • Bug SERVER-18239: dumpauth.js uses ambiguous --db/--collection args
  • Bug SERVER-18021: Allow serverStatus to be executed locally against an arbiter in an authenticated replica set
  • Bug SERVER-18229: Smoke.py with PyMongo 3.0.1 fails to run certain tests
  • Bug SERVER-17998: Ignore socket exceptions in initial_sync_unsupported_auth_schema.js test
  • Bug SERVER-18073: Fix smoke.py to work with pymongo 3.0
  • Task SERVER-18097: Remove mongosTest_auth and mongosTest_WT tasks from evergreen.yml
  • Improvement SERVER-17332: getmore/query logging/profiling should indicate cursor exhaustion
  • Improvement SERVER-18102: Remove ServerAndQuery
  • Bug SERVER-18192: Crash running WiredTiger with "cache_resident=true"
  • Bug SERVER-17937: Remove the 'exception: ' prefix to errors returned from command processing
  • Bug SERVER-18087: index_retry.js and index_no_retry.js not checking for presence of "progress" field in currentOp() result

New in MongoDB 3.0.1 (Mar 21, 2015)

  • Highlights:
  • Fixed race condition in WiredTiger between inserts and checkpoints that could result in lost records: SERVER-17506.
  • Resolved issue in WiredTiger’s capped collections implementing that caused a server crash: SERVER-17345.
  • Fixed issue is initial sync with duplicate _id entries: SERVER-17487.
  • Fixed deadlock condition in MMAPv1 between the journal lock and the oplog collection lock: SERVER-17416.

New in MongoDB 3.0.0 (Mar 10, 2015)

  • Key features include support for the WiredTiger storage engine, pluggable storage engine API, SCRAM-SHA-1 authentication mechanism, and improved explain functionality.
  • MongoDB Ops Manager, which includes Automation, Backup, and Monitoring, is now also available. See the Ops Manager documentation and the Ops Manager release notes for more information.
  • Major Changes:
  • Pluggable Storage Engine API - MongoDB 3.0 introduces a pluggable storage engine API that allows third parties to develop storage engines for MongoDB.
  • WiredTiger - MongoDB 3.0 introduces support for the WiredTiger storage engine. With the support for WiredTiger, MongoDB now supports two storage engines:
  • MMAPv1, the storage engine available in previous versions of MongoDB and the default storage engine for MongoDB 3.0, and
  • WiredTiger, available only in the 64-bit versions of MongoDB 3.0.
  • WiredTiger Usage:
  • WiredTiger is an alternate to the default MMAPv1 storage engine. WiredTiger supports all MongoDB features, including operations that report on server, database, and collection statistics. Switching to WiredTiger, however, requires a change to the on-disk storage format. For instructions on changing the storage engine to WiredTiger, see the appropriate sections in the Upgrade MongoDB to 3.0 documentation.
  • MongoDB 3.0 replica sets and sharded clusters can have members with different storage engines; however, performance can vary according to workload. For details, see the appropriate sections in the Upgrade MongoDB to 3.0 documentation.
  • The WiredTiger storage engine requires the latest official MongoDB drivers. For more information, see WiredTiger and Driver Version Compatibility.
  • WiredTiger Configuration:
  • To configure the behavior and properties of the WiredTiger storage engine, see storage.wiredTiger configuration options. You can set WiredTiger options on the command line.
  • WiredTiger Concurrency and Compression:
  • The 3.0 WiredTiger storage engine provides document-level locking and compression.
  • By default, WiredTiger compresses collection data using the snappy compression library. WiredTiger uses prefix compression on all indexes by default.
  • MMAPv1 Improvements:
  • MMAPv1 Concurrency Improvement - In version 3.0, the MMAPv1 storage engine adds support for collection-level locking.
  • MMAPv1 Configuration Changes - To support multiple storage engines, some configuration settings for MMAPv1 have changed. See Configuration File Options Changes.
  • MMAPv1 Record Allocation Behavior Changes - MongoDB 3.0 no longer implements dynamic record allocation and deprecates paddingFactor. The default allocation strategy for collections in instances that use MMAPv1 is power of 2 allocation, which has been improved to better handle large document sizes. In 3.0, the usePowerOf2Sizes flag is ignored, so the power of 2 strategy is used for all collections that do not have noPadding flag set.
  • For collections with workloads that consist only of inserts or in-place updates (such as incrementing counters), you can disable the power of 2 strategy. To disable the power of 2 strategy for a collection, use the collMod command with the noPadding flag or the db.createCollection() method with the noPadding option.
  • Warning:
  • Do not set noPadding if the workload includes removes or any updates that may cause documents to grow. For more information, see No Padding Allocation Strategy.
  • When low on disk space, MongoDB 3.0 no longer errors on all writes but only when the required disk allocation fails. As such, MongoDB now allows in-place updates and removes when low on disk space.
  • Replica Sets:
  • Increased Number of Replica Set Members - In MongoDB 3.0, replica sets can have up to 50 members. [1] The following drivers support the larger replica sets:
  • C# (.NET) Driver 1.10
  • Java Driver 2.13
  • Python Driver (PyMongo) 3.0+
  • Ruby Driver 2.0+
  • Node.JS Driver 2.0+
  • Because the C, C++, Perl, PHP, and earlier versions of the Ruby, Python, and Node.JS drivers discover and monitor replica set members serially, these drivers are not suitable for use with large replica sets.
  • Pymongo 3.0, the Ruby Driver 2.0, and the Node.JS Driver 2.0 are currently in development.
  • The maximum number of voting members remains at 7.
  • Replica Set Step Down Behavior Changes:
  • The process that a primary member of a replica set uses to step down has the following changes:
  • Before stepping down, replSetStepDown will attempt to terminate long running user operations that would block the primary from stepping down, such as an index build, a write operation or a map-reduce job.
  • To help prevent rollbacks, the replSetStepDown will wait for an electable secondary to catch up to the state of the primary before stepping down. Previously, a primary would wait for a secondary to catch up to within 10 seconds of the primary (i.e. a secondary with a replication lag of 10 seconds or less) before stepping down.
  • replSetStepDown now allows users to specify a secondaryCatchUpPeriodSecs parameter to specify how long the primary should wait for a secondary to catch up before stepping down.
  • Other Replica Set Operational Changes:
  • Initial sync builds indexes more efficiently for each collection and applies oplog entries in batches using threads.
  • Definition of w: “majority” write concern changed to mean majority of voting nodes.
  • Stronger restrictions on Replica Set Configuration. For details, see Replica Set Configuration Validation.
  • For pre-existing collections on secondary members, MongoDB 3.0 no longer automatically builds missing _id indexes.
  • Sharded Clusters:
  • MongoDB 3.0 provides the following enhancements to sharded clusters:
  • Adds a new sh.removeTagRange() helper to improve management of sharded collections with tags. The new sh.removeTagRange() method acts as a complement to sh.addTagRange().
  • Provides a more predictable read preference behavior. mongos instances no longer pin connections to members of replica sets when performing read operations. Instead, mongos reevaluates read preferences for every operation to provide a more predictable read preference behavior when read preferences change.
  • Provides a new writeConcern setting to configure the write concern of chunk migration operations. You can configure the writeConcern setting for the balancer as well as for moveChunk and cleanupOrphaned commands.
  • Improves visibility of balancer operations. sh.status() includes information about the state of the balancer. See sh.status() for details.
  • Security Improvements:
  • MongoDB 3.0 includes the following security enhancements:
  • Adds a new SCRAM-SHA-1 challenge-response user authentication mechanism.
  • Increases restrictions when using the Localhost Exception to access MongoDB. For details, see Localhost Exception Changed.
  • Security Changes:
  • Improvements:
  • New Query Introspection System - MongoDB 3.0 includes a new query introspection system that provides an improved output format and a finer-grained introspection into both query plan and query execution.
  • For details, see the new db.collection.explain() method and the new explain command as well as the updated cursor.explain() method.
  • For information on the format of the new output, see Explain Results.
  • Enhanced Logging - To improve usability of the log messages for diagnosis, MongoDB categorizes some log messages under specific components, or operations, and provides the ability to set the verbosity level for these components. For information, see Log Messages.
  • MongoDB Tools Enhancements - All MongoDB tools are now written in Go and maintained as a separate project.
  • New options for parallelized mongodump and mongorestore. You can control the number of collections that mongorestore will restore at a time with the --numParallelCollections option.
  • New options -excludeCollection and --excludeCollectionsWithPrefix for mongodump to exclude collections.
  • mongorestore can now accept BSON data input from standard input in addition to reading BSON data from file.
  • mongostat and mongotop can now return output in JSON format with the --json option.
  • Added configurable write concern to mongoimport, mongorestore, and mongofiles. Use the --writeConcern option.
  • mongofiles now allows you to configure the GridFS prefix with the --prefix option so that you can use custom namespaces and store multiple GridFS namespaces in a single database.
  • MongoDB Tools Changes:
  • Indexes - Background index builds will no longer automatically interrupt if dropDatabase, drop, dropIndexes operations occur for the database or collection affected by the index builds. The dropDatabase, drop, and dropIndexes commands will still fail with the error message a background operation is currently running, as in 2.6.
  • If you specify multiple indexes to the createIndexes command, the command only scans the collection once, and if at least one index is to be built in the foreground, the operation will build all the specified indexes in the foreground.
  • For sharded collections, indexes can now cover queries that execute against the mongos if the index includes the shard key.
  • Indexes in Compatibility Changes in MongoDB 3.0:
  • Query Enhancements - MongoDB 3.0 includes the following query enhancements:
  • For geospatial queries, adds support for “big” polygons for $geoIntersects and $geoWithin queries. “Big” polygons are single-ringed GeoJSON polygons with areas greater than that of a single hemisphere. See $geometry, $geoIntersects, and $geoWithin for details.
  • For aggregate(), adds a new $dateToString operator to facilitate converting a date to a formatted string.
  • Adds the $eq query operator to query for equality conditions.
  • 2d Indexes and Geospatial Near Queries:
  • Distributions - Most non-Enterprise MongoDB distributions now include support for SSL. Previously, only MongoDB Enterprise distributions came with SSL support included; for non-Enterprise distributions, you had to build MongoDB locally with the --ssl flag (i.e. scons --ssl).
  • MongoDB Enterprise Features:
  • Auditing - Auditing in MongoDB Enterprise can filter on any field in the audit message, including the fields returned in the param document. This enhancement, along with the auditAuthorizationSuccess parameter, enables auditing to filter on CRUD operations. However, enabling auditAuthorizationSuccess to audit of all authorization successes degrades performance more than auditing only the authorization failures.

New in MongoDB 2.6.8 (Feb 28, 2015)

  • Add listCollections command functionality to 2.6 shell and client SERVER-17087
  • copydb/clone commands can crash the server if a primary steps down SERVER-16599
  • Secondary fasserts trying to replicate an index SERVER-16274
  • Query optimizer should always use equality predicate over unique index when possible SERVER-15802
  • All issues closed in 2.6.8

New in MongoDB 2.6.8 RC 0 (Feb 18, 2015)

  • Bug SERVER-16655: Geo predicate is unable to use compound 2dsphere index if it is root of $or clause
  • Bug SERVER-16421: sharding_rs2.js should clean up data on all replicas
  • Bug SERVER-15802: Query optimizer should always use equality predicate over unique index when possible
  • Bug SERVER-17191: Spurious warning during upgrade of sharded cluster
  • Improvement SERVER-15471: Better error message when replica is not found in GhostSync::associateSlave
  • Bug SERVER-17163: Fatal error "logOp but not primary" in MigrateStatus::go
  • Bug SERVER-16527: 2dsphere explain reports "works" for nscanned & nscannedObjects
  • Bug SERVER-14572: Increase C runtime stdio file limit
  • Bug SERVER-16984: UpdateLifecycleImpl can return empty collectionMetadata even if ns is sharded
  • Bug SERVER-15400: Create Windows Enterprise Zip File with vcredist and dependent dlls
  • Bug SERVER-10904: Possible for _master and _slaveConn to be pointing to different connections even with primary read pref
  • Bug SERVER-17216: 2.6 mongostat cannot be used with 3.0 mongod
  • Bug SERVER-16599: copydb/clone commands can crash the server if a primary steps down
  • Bug SERVER-16315: Replica set nodes should not threaten to veto nodes whose config version is higher than their own
  • Bug SERVER-16274: secondary fasserts trying to replicate an index
  • Bug SERVER-17278: BSON BinData validation enforcement
  • Improvement SERVER-17264: improve bson validation
  • Bug SERVER-17022: No SSL Session Caching may not be respected
  • Improvement SERVER-17087: Add listCollections command functionality to 2.6 shell & client
  • Bug SERVER-14756: The YAML storage.quota.enforced option is not found
  • Bug SERVER-14190: mongorestore parseMetadataFile passes non-null terminated string to 'fromjson'
  • Bug SERVER-14044: Incorrect {$meta: 'text'} reference in aggregation $sort error message
  • New Feature SERVER-14803: Support static libstdc++ builds for non-Linux builds

New in MongoDB 3.0.0 RC 8 (Feb 6, 2015)

  • Bug SERVER-17100: mongod hung running mongo-perf
  • Bug SERVER-17132: Index contains extra entries
  • Bug SERVER-17115: insert workload stalls on oplog truncates
  • Bug SERVER-17107: Replica set, with only one voter, invariants during election
  • Bug SERVER-17167: Shell breaks when a multiline function is input
  • Bug SERVER-17129: logOp fassert when creating namespace on stepped-down primary via legacy update
  • Bug SERVER-17114: WiredTiger capped collection cursor needs to go DEAD when restoreState to a deleted doc
  • Bug SERVER-17150: logOp fassert when dropping collection on stepped-down primary
  • Bug SERVER-17117: boost::lock_error in CachedPlanStage::updateCache when destructing CountStage
  • Bug SERVER-17067: Burst of highly contended updates causes mongod with oplog to be irresponsive
  • Bug SERVER-17108: Need to log member name during config loading
  • Bug SERVER-17097: Rocks compilation error in RocksRecoveryUnit::beginUnitOfWork
  • Bug SERVER-17142: corruption in sizeStorer.wt file after kill -9 on server
  • Task SERVER-17136: Update man pages
  • Bug SERVER-17094: repairing local db with WiredTiger will deadlock with the oplog cleaning thread and crash
  • Bug SERVER-17161: Fix Rocks build broken with getSnapshotId() virtual function
  • Bug SERVER-17096: Test "replsets/resync.js" should ensure first node is always primary
  • Bug SERVER-17123: Always stop background sync thread when we become primary
  • Bug SERVER-17172: Check _lastLoc for sentinel in WTRecordStore::Iterator::restoreState for capped collections
  • Bug SERVER-15308: Stepdown does not cancel active (background) index builds causing shutdown on completion
  • Bug SERVER-17181: Correctly invalidate RocksDB cursor when restoring to a deleted doc
  • Bug SERVER-17179: check for replicaset stepdown in cloner
  • Bug SERVER-16997: wiredtiger's "bytes currently in the cache" exceeds "maximum bytes configured" and eviction threads are deadlocked
  • Bug SERVER-17164: mongod sometimes crashes when restarting to disable auth
  • Bug SERVER-17185: replsets/auth1.js error handling is confusing and unhelpful
  • Bug SERVER-17173: 3.0 Mongos should support listCollections and listIndexes even when the shard server is running 2.6 mongod
  • Bug SERVER-16866: Coverity analysis defect 44225: Redundant test
  • Improvement SERVER-17126: Improve rocks engine
  • Improvement SERVER-17133: Fail verbosely when RocksDB's disk format changes

New in MongoDB 3.0.0 RC 7 (Jan 29, 2015)

  • Bug SERVER-17037: output of "top" command is zero on secondary running WT
  • Bug SERVER-17080: shutdown on secondary could lose last op applied
  • Bug SERVER-17056: On shutdown and database drop data files can be closed before the journal thread has finished applying
  • Bug SERVER-17025: Handle leak when WT enabled - Only on windows
  • Task SERVER-17006: Support "random" failpoint activation
  • Improvement SERVER-16604: Improve integration with rocks
  • Bug SERVER-16984: UpdateLifecycleImpl can return empty collectionMetadata even if ns is sharded
  • Task SERVER-15704: Re-enable resync.js
  • Improvement SERVER-17057: Make sure inserts succeeded in sync_conn_cmd.js before testing
  • Bug SERVER-17071: Resync crashes secondary
  • Bug SERVER-16967: WT_WITH_TABLE_LOCK assert failure during compact
  • Bug SERVER-16921: WT oplog bottleneck on secondary
  • Bug SERVER-16773: Performance degradation due to TCMalloc scalability
  • Bug SERVER-17068: 3.0.0-rc6 cannot build with the 3.25 JS engine
  • Bug SERVER-17079: stepdown_long_wait_time.js
  • Bug SERVER-17083: Background thread for oplog clean-up can timeout during repair (invariant failure)
  • Bug SERVER-17027: Inserts that create a collection can segfault if there is an ill-timed WriteConflictException
  • Bug SERVER-17036: db.runCommand({startupWarnings:1}) includes spurious line
  • Bug SERVER-17053: drop and dropIndexes commands should not return WriteConflict error to users
  • Bug SERVER-17061: create, createIndex, and dropDatabase should not return WriteConflict
  • Bug SERVER-17091: removed nodes should not attempt to create update position commands as they will segfault when trying to grab their member config from the replset config
  • Bug SERVER-17030: handle WCE in index builds
  • Bug SERVER-17028: TTL Monitor has to handle WriteConflictException
  • Improvement SERVER-17000: Drop the { ts: 1 } index during --upgrade
  • Bug SERVER-17021: Significant WT Performance Regression on "modified" FSM workload
  • Bug SERVER-16893: Invariant failure: out-of-order index keys with v0 WiredTiger index
  • Bug SERVER-17012: Server Terminates Javascript Execution for GroupStage Setup with a Timeout
  • Bug SERVER-17063: make filemd5 handle WriteConflictException
  • Improvement SERVER-16951: Restrict maximum number of in-flight operations
  • Bug SERVER-17077: jstests/core/evalc.js should not run indefinitely if background shell fails
  • Bug SERVER-17020: Evictions by eviction server threads are reported as evictions by application threads
  • Bug SERVER-17001: possible overflow in maxmempage calculation

New in MongoDB 3.0.0 RC 6 (Jan 24, 2015)

  • Bug SERVER-16959: Collection::updateDocument() issues an INVALIDATION_MUTATION after performing an in-place update (MMAP v1)
  • New Feature SERVER-16873: Need to call commitAndRestart before stashing RUs for getMore
  • Bug SERVER-15691: acquiring balancer lock may fail and get stuck with concurrent write traffic
  • Bug SERVER-16738: WiredTiger deadlock opening multiple cursors in parallel
  • Bug SERVER-16763: mongod terminate due to mongo::DBTryLockTimeoutException during longevity test with wiredTiger
  • Bug SERVER-16867: Server crashed during iiBench run using WiredTiger engine
  • Bug SERVER-16908: Performance Regression in Foreground Index Builds with MMAPv1
  • Bug SERVER-16750: Document never matching query predicate incorrectly returned by query if concurrently updated (WiredTiger)
  • Bug SERVER-16574: Do not call Explain::getPlanSummary on every insert/update, or eliminate its allocating behavior
  • Bug SERVER-16882: Enable debug wiredtiger flags in debug mongodb build
  • Bug SERVER-16807: Update on invalid loc fails in concurrent circumstances
  • Bug SERVER-15802: Query optimizer should always use equality predicate over unique index when possible
  • Improvement SERVER-16604: Improve integration with rocks
  • Bug SERVER-16837: Migrations should time out after 10 hrs waiting for replication
  • Bug SERVER-16065: Long flush pauses in MMAPv1
  • Bug SERVER-16922: Slow index build times on secondaries with Wired Tiger
  • Bug SERVER-16864: ttl_repl_secondary_disabled.js
  • Bug SERVER-16870: Suppress indexDetails from sharded collstats in shell
  • Bug SERVER-16907: pause repl6.js between restarts
  • Bug SERVER-16904: replsets/auth1.js auth error
  • Bug SERVER-16172: mongod --repair terminates before repair is attempted under WiredTiger
  • New Feature SERVER-16663: options requested in top-level SConstruct to support non-default libraries and includes
  • Bug SERVER-16797: Remove support for touch command for WiredTiger
  • Bug SERVER-15876: Add Collection level lock checks to appropriate entry points to storage engine
  • Sub-task SERVER-16658: SERVER-14707 C++ driver (server fork) methods getIndexSpecs()/getCollectionInfos() should iterate returned command cursor
  • Bug SERVER-13863: JS engines shouldn't be linked in to mongos or tools
  • Bug SERVER-17030: handle WCE in index builds
  • Bug SERVER-16822: Map reduce doesn't use scoped transaction which results in deadlock at eviction
  • Bug SERVER-16795: Recovery Unit invariant tripped when calling getMore through DBDirectClient
  • Bug SERVER-16886: Segmentation fault when loading data into WiredTiger.
  • Bug SERVER-16930: remove unnecessary fatal assertion when building multiple indexes concurrently via system.indexes writes
  • Bug SERVER-16749: Unhandled DBException in TTLMonitor terminates server
  • Bug SERVER-16880: Timer overflows at approximately 9223 seconds
  • Bug SERVER-16946: "it" not working in the javascript shell when getting next cursor batch
  • Bug SERVER-16278: Race between shutdown and fsync flush with WiredTiger
  • Bug SERVER-16970: WiredTiger index prefix compression configuration is not applied to creationString
  • New Feature SERVER-16957: Permit specification of boost library suffix search preference
  • Bug SERVER-14707: listCollections and listIndexes commands should return a cursor
  • Improvement SERVER-16943: Add test for compatibility of replset background index and renameCollection
  • Improvement SERVER-16708: Adjust Value::compare() to reflect changes to BSON::woCompare()
  • Bug SERVER-16717: unexpected WriteConflict exceptions with WiredTiger b-tree
  • Bug SERVER-16664: Segmentation fault on insert operation with Tiger engine / zlib compressor
  • Sub-task SERVER-16659: SERVER-14707 Cleanup pass for CursorManager/getMore()/listCollections/listIndexes
  • Bug SERVER-16954: Removing objects from under a geo $near query causes invalid memory access
  • Improvement SERVER-16887: PlanExecutor::_root should have type scoped_ptr
  • Bug SERVER-16337: WriteBatchExecutor's WriteConflictException not caught
  • Task SERVER-16786: oplog can go back in time after rollback/startup, when node clocks are not in sync (mms-qa)
  • Bug SERVER-16948: printSlaveReplicationInfo() appears broken in master
  • Bug SERVER-16697: MongoDb terminate when WT fault STATUS_STACK_OVERFLOW
  • Bug SERVER-16916: RecordId might be inserted more than once with unique index and dupsAllowed == true
  • Bug SERVER-16913: Return connections to pool on mongos when checking config servers up locally
  • Bug SERVER-15744: RocksDB storage engine does not pass all tests
  • Bug SERVER-16961: incrementally cleanup connections in mongos_rs_shard_failure_tolerance.js
  • Bug SERVER-16865: created checked_cast and use in hot spots
  • Bug SERVER-16925: Invariant fires during shutdown on secondary node (WiredTiger)
  • Bug SERVER-16688: DurableImpl::commitAndStopDurThread must wait for the durability thread to exit
  • Improvement SERVER-16782: Modify collection stats helper to optionally suppress index details
  • Improvement SERVER-16437: Simple index scans should work like CountScan
  • Bug SERVER-16994: Handle WriteConflictException when writing oplog on secondaries
  • Bug SERVER-17005: skip clearing tmp collection if it fails with WriteConflictException
  • Task SERVER-16878: Increased information to help debug stepdown.js test failure
  • Bug SERVER-16514: Consistently getting "exception: collection's metadata is undergoing changes" during a drop
  • Bug SERVER-15322: mongosniff erroneously displays the same string for source and destination IP addresses
  • Bug SERVER-16773: Performance degradation due to TCMalloc scalability
  • Bug SERVER-16092: Modifications to admin.system.users and admin.system.roles collections must be serialized
  • Bug SERVER-16901: upgrade_to_ssl_nossl.js
  • Improvement SERVER-16982: Optimize WiredTiger index cursor's pointsToSamePlaceAs() implementation
  • Bug SERVER-16607: Dropping collection during active aggregation operation can crash server
  • Task SERVER-15614: Implement locking statistics in db.currentOp and db.serverStatus
  • Bug SERVER-16881: Pause due to sudden 4GB increase in cached bytes under WiredTiger
  • Bug SERVER-16923: Profiler collection not created when using --profile
  • Improvement SERVER-17002: Improve AuthenticationFailure log message for mechanism mismatch
  • Bug SERVER-16672: Disallow NUL bytes in index names
  • Bug SERVER-17003: Check command status for WriteConflictException on secondaries and retry
  • Bug SERVER-16919: Oplog can grow much larger than configured size under WiredTiger
  • Bug SERVER-16655: Geo predicate is unable to use compound 2dsphere index if it is root of $or clause
  • Improvement SERVER-13256: Remove pch.h
  • Bug SERVER-16874: Need to reset ElapsedTracker after getMore
  • Bug SERVER-16676: Compact with WiredTiger does not rebuild indexes
  • Improvement SERVER-16643: extend existing THP warning to THP defrag setting
  • Bug SERVER-16461: Setting socket timeouts less than 1.0 seconds leads to setting no socket timeout on Windows
  • Bug SERVER-16747: KeyString should overflow to heap
  • Bug SERVER-16902: Possible memory leak in WT b-tree with zlib block compressor
  • Bug SERVER-16818: Add socket timeout to isSelf replication check
  • Improvement SERVER-16243: Suppress mmapv1 specific stats from db.serverStatus()
  • Bug SERVER-16906: storage engines without directoryperdb support should fail to start up with --directoryperdb
  • Bug SERVER-16639: Server restart with WiredTiger on full disk causes a segfault
  • Bug SERVER-16863: auth_no_pri.js
  • Bug SERVER-16793: when running db.getSlaveReplicationInfo() on secondary it treats "self" as "master"
  • Improvement SERVER-16875: Add disk jstests for directoryperdb with wiredtiger
  • Bug SERVER-16806: After 1 hour timeout, rangeDeleter incorrectly reports "timed out after 0 seconds"
  • Bug SERVER-16830: hint by index name breaks with explain()
  • Task SERVER-16850: Remove support for touch command for RocksDB
  • Bug SERVER-16601: findAndModify should report that remove and update options conflict
  • Bug SERVER-16988: db.listCommands has a bug
  • Improvement SERVER-16811: Only register wiredTiger factory once
  • Bug SERVER-16754: Confusing severity values when mongo shell start fails
  • Bug SERVER-16839: collStats command in mongos needs to be updated for new fields
  • Bug SERVER-16848: Shell's db.collection.totalSize() returns NAN on latest
  • Improvement SERVER-5399: Add "quit" as a synonym for "exit" in mongo command shell
  • Bug SERVER-17016: db.collection.createIndex() crashes with dev null storage engine

New in MongoDB 2.8.0 RC 5 (Jan 16, 2015)

  • Closed issues:
  • Bug SERVER-16733: mongos does not fail when different configdb string is used
  • Sub-task SERVER-16657: SERVER-14707 Implement authorization check for getMore/killCursors on cursors owned by global cursor manager
  • Bug SERVER-16817: --repair fails if there are multiple collections with outdated WT index versions
  • Bug SERVER-15539: Invariant failure keyOffset >= 0 during 16 thread write command remove operation
  • Bug SERVER-16775: Steady decline in performance in capped collections under wiredTiger
  • Bug SERVER-16351: Erroneous document returned in query (wt) (mms-dev)
  • Improvement SERVER-16632: Change WiredTiger index key format to no longer use BSON
  • Bug SERVER-16651: Mass deletions and updates (including TTL) completely starve insertions in replica set under WiredTiger
  • Bug SERVER-16694: Secondary hangs during shutdownServer()
  • Bug SERVER-16798: KeyString needs to support NUL bytes in Strings
  • Bug SERVER-3304: Change comparison order so all Dates sort before all Timestamps
  • Improvement SERVER-16567: extend data directory metadata to hold storage engine creation settings for startup validation
  • Bug SERVER-16274: secondary fasserts trying to replicate an index
  • Bug SERVER-14992: Query for Windows 7 File Allocation Fix, and other hotfixes
  • Task SERVER-16100: Clean up packaging scripts, remove hardcoded version from rpm spec files
  • Bug SERVER-16760: Coverity analysis defect 49690: Resource leak
  • Improvement SERVER-16030: Update sizeStorer data when collection validate is called
  • Bug SERVER-16767: Add cursor metrics to serverStatus in mongos
  • Bug SERVER-16415: mmapv1 replica multi collection insert is 70% slower vs no replication
  • Bug SERVER-16734: Remove storage.mmapv1.syncPeriodSecs and storage.wiredTiger.engineConfig.checkpointDelaySecs; use storage.syncPeriodSecs for both.
  • Bug SERVER-16706: Prevent_logOpRS from pushing primary's last optime back in time in doc-locking storage engines
  • Bug SERVER-3719: woCompare does not provide a total order over doubles and longs.
  • Bug SERVER-16660: sharding_system_namespaces.js incorrectly assumes that mongod supports wiredTiger
  • Bug SERVER-16707: WiredTiger cappedDeleteAsNeeded invariant failure
  • Bug SERVER-16673: fassert when multi-index build fails with WiredTiger
  • Bug SERVER-16724: Startup time under WiredTiger is extremely slow and gets worse as database grows
  • Bug SERVER-16675: getMore looks up doc with invalid RecordId, fails with "Didn't find RecordId in WiredTigerRecordStore"
  • Improvement SERVER-16742: KEEP_MUTATIONS stage is not needed for storage engines supporting doc-level locking
  • Sub-task SERVER-12833: SERVER-16100 Implement packaging for RC's and nightlies
  • Task SERVER-16764: Clean up replication code
  • Bug SERVER-16568: support "none" as a valid compressor option in WiredTiger
  • Bug SERVER-16687: MoveFile WiredTiger.turtle.set to WiredTiger.turtle: Broken pipe
  • Bug SERVER-16794: Invariant failure: WT_NOTFOUND error with concurrent removes and updates
  • Bug SERVER-16711: Do not create empty database while checking for collections
  • Bug SERVER-16106: Event Viewer (system) error when pressing power button on machine
  • Bug SERVER-16635: make sharding/mongos_no_replica_set_refresh.js test agnostic to who is elected primary
  • Bug SERVER-16753: Wrong component for commands
  • Bug SERVER-16692: Switching journalling off and on with WT not safe
  • Improvement SERVER-16602: Review WiredTiger default settings for engine and collections
  • Bug SERVER-16671: logging write conflicts at log level 0 is too aggressive
  • Improvement SERVER-16772: Eliminate redundant work in the update path
  • Improvement SERVER-15259: exitCleanly should not be called in error cases
  • New Feature SERVER-16744: Targeted community build packages and repo
  • Bug SERVER-16677: mongod.lock file should be present in data directory regardless of storage engine selected
  • Bug SERVER-16714: serverStatus command with oplog argument to config server returns error
  • Bug SERVER-16755: Global severity seems to overwrite component severity in some cases
  • Bug SERVER-16591: Deadlock due to KVDatabaseCatalogEntry doing blocking transactional operations under the _collectionsLock
  • Sub-task SERVER-12160: SERVER-16100 Allow packager.py and packager-enterprise.py to use arbitrary gitspecs instead of release tags
  • Bug SERVER-16615: Long database names will crash server during repair on mmapv1 when using directoryperdb
  • Bug SERVER-16667: Isolated writes with extreme latencies in replica set under WiredTiger
  • Bug SERVER-16260: Some commands no longer accept values of the Symbol BSON type
  • Bug SERVER-7804: compareElementValues for CodeWScope is broken
  • Improvement SERVER-16061: Remove support for "text" command
  • Improvement SERVER-16780: Missing auth test of cleanupOrphaned
  • Bug SERVER-16761: Coverity analysis defect 49668: PW.USELESS_TYPE_QUALIFIER_ON_RETURN_TYPE
  • Task SERVER-15541: Re-enable yielding
  • Bug SERVER-16748: consecutive replSetReconfig calls can trigger an invariant failure
  • Bug SERVER-16600: Windows: net stop service does not do clean shutdown
  • Bug SERVER-16684: Coverity analysis defect 49093: Unchecked dynamic_cast
  • Bug SERVER-16614: Windows: should allow users to install 2.6 and 2.8 enterprise versions
  • Improvement SERVER-16572: Add counter for calls to sched_yield in WiredTiger
  • Improvement SERVER-16683: Decrease mongos memory footprint when shards have several tags
  • Improvement SERVER-16580: Remove deprecated system collection references in JS tests
  • Bug SERVER-16623: Cannot allocate memory (wiredtiger) (mms-dev)
  • Bug SERVER-16502: CollectionInfoCache being written without exclusive lock
  • Bug SERVER-16834: Secondary nodes can hang during shutdown if BGSync::_buffer is full
  • Improvement SERVER-16777: Capped collection truncation behavior across storage engines is inconsistent
  • Improvement SERVER-16829: Expose tcmalloc runtime configuration options through setParameter mechanism
  • Task SERVER-16640: Long running queries on the secondary with WT
  • Bug SERVER-16517: Secondary on 2.8.0rc2 cannot keep up (insert-heavy, mmapv1) (mms-prod-queues)
  • Improvement SERVER-16483: Display collection name for the "Collection dropped or state deleted during yield of CollectionScan" warning
  • Bug SERVER-16716: Removing host string arg length limitation for mongo shell
  • Bug SERVER-16005: Inelegant abend when cannot bind() TCP 27017 at startup
  • Bug SERVER-16757: Incorrect query report for $explain
  • Bug SERVER-16649: mongos_rs_auth_shard_failure_tolerance.js should wait for writes to be replicated before shutting down the primary
  • Bug SERVER-16661: GlobalCursorIdCache leaks a SecureRandom
  • Bug SERVER-16705: leak in PortMessageServer::acceptMP
  • Bug SERVER-16740: Log contents instead of pointer address in shardCollection failure
  • Bug SERVER-16577: 2.8 doesn't have a field to report if query cache plan filters are used in explain
  • Task SERVER-16695: Move FSM tests into new test suites
  • Bug SERVER-16720: Init script in Red Hat fails if using YAML inline syntax
  • Bug SERVER-16723: display active commands in server status only when command metrics are available.
  • Improvement SERVER-16565: FsyncLock on WT should not imply "snapshotting" is OK
  • Improvement SERVER-16784: only enable the minimum necessary Scons tools
  • Bug SERVER-16721: Allow init script PIDFILEPATH to be configured via sysconfig
  • Bug SERVER-16275: MMAPv1 does not report when capped is false in colstats
  • Improvement SERVER-16682: remove duplicate sys/socket.h include from mongo/util/net/sock.h
  • Task SERVER-16778: Remove output to cerr in PlanRankingWorkPlansLongEnough

New in MongoDB 2.6.7 RC 0 (Jan 8, 2015)

  • Closed issues:
  • SERVER-16237: Don't check the shard version if the primary server is down
  • SERVER-14306: mongos can cause the in-memory sort limit to be hit on shards by requesting more results than needed
  • SERVER-16732: SyncSourceFeedback::replHandshake() may perform an illegal erase from a std::map in some circumstances
  • SERVER-16408: max_time_ms.js should not run in parallel suite
  • SERVER-16683: Decrease mongos memory footprint when shards have several tags
  • SERVER-16081: init.d mongod startup script fails, with dirname message
  • SERVER-15766: prefix_shard_key.js depends on primary allocation to particular shards

New in MongoDB 2.8.0 RC 4 (Dec 27, 2014)

  • Closed issues:
  • SERVER-16432: Chunk migration data structures not properly synchronized with storage engines that offer document-level locking
  • SERVER-16617: Performance regression has been introduced by f59a05c611d66a03c1fb8579b54569bfc2971374
  • SERVER-16237: Don't check the shard version if the primary server is down
  • SERVER-16624: Batch insert triggers deadlock-detection fassert
  • SERVER-16546: Mongod memory grows until killed with wiredTiger repl set with small oplog
  • SERVER-15798: Helpers::removeRange does not check if node is primary
  • SERVER-16179: lock manager timeout w/ stack trace
  • SERVER-16196: Add FSM-based concurrency tests to parallel suite
  • SERVER-16245: Expose index statistics for WiredTiger
  • SERVER-16392: ShardInfo should stop using mapped to get size estimate
  • SERVER-16390: Text stage fetches document twice if phrase or negation filter present
  • SERVER-16129: cloneCollection does not yield
  • SERVER-16406: New tests for big polygon
  • SERVER-16367: Add versioning info to WiredTiger
  • SERVER-16520: SERVER-14707 Allow creation of ClientCursor objects that are managed by a global registry
  • SERVER-14306: mongos can cause the in-memory sort limit to be hit on shards by requesting more results than needed
  • SERVER-16562: Extremely slow shutdown for WiredTiger (non-LSM)
  • SERVER-16534: SCRAM-SHA-1 auth mechanism should be allowed for __system@local user even if SCRAM-SHA-1 is not configured as an authMechanism
  • SERVER-16498: d_migrate.cpp should not rely on system.namespaces
  • SERVER-16633: Add timer to geo near stage to track execution time
  • SERVER-16457: WT verify and salvage operations failing with EBUSY
  • SERVER-16111: Store & display catalog creation metadata for WiredTiger collections & indexes
  • SERVER-16200: Profile and tune mmapv1 performance
  • SERVER-16523: SERVER-14707 listIndexes should leave a ClientCursor open if multiple batches needed
  • SERVER-16522: SERVER-14707 listCollections should leave a ClientCursor open if multiple batches needed
  • SERVER-16606: remove index blockCompressor and collection prefixCompression options
  • SERVER-16603: Fix rocks build
  • SERVER-16608: collStats scale argument does not apply to maxSize
  • SERVER-16081: init.d mongod startup script fails, with dirname message
  • SERVER-16197: "scons install" broken since tools rewrite
  • SERVER-16586: mongoperf crashes writing with MMF and syncDelay is other that 0-never
  • SERVER-16613: indexbg_restart_secondary.js

New in MongoDB 2.6.6 (Dec 10, 2014)

  • Fixed: Evaluating candidate query plans with concurrent writes on same collection may crash mongod SERVER-15580
  • Fixed: 2.6 mongod crashes with segfault when added to a 2.8 replica set with 12 or more members SERVER-16107
  • Fixed: $regex, $in and $sort with index returns too many results SERVER-15696
  • Change: moveChunk will fail if there is data on the target shard and an required index does not exist. SERVER-12472
  • Primary should abort if encountered problems writing to the oplog SERVER-12058
  • Closed issues:
  • SERVER-16324: Command execution log line displays "query not recording (too large)" instead of abbreviated command object
  • SERVER-16316: Remove unsupported behavior in shard3.js
  • SERVER-16291: Cannot set/list/clear index filters on the secondary
  • SERVER-16283: Can't start new wiredtiger node with log file or config file in data directory - false detection of old mmapv1 files
  • SERVER-16107: 2.6 mongod crashes with segfault when added to a 2.8 replica set with >= 12 nodes.
  • SERVER-16017: Suse11 enterprise packages fail due to unmet dependencies
  • SERVER-15994: listIndexes and listCollections can be run on secondaries without slaveOk bit
  • SERVER-15986: Starting with different storage engines in the same dbpath should error/warn
  • SERVER-15958: The "isMultiKey" value is not correct in the output of aggregation explain plan
  • SERVER-15899: Querying against path in document containing long array of subdocuments with nested arrays causes stack overflow
  • SERVER-15849: do not forward replication progress for nodes that are no longer part of a replica set
  • SERVER-15696: $regex, $in and $sort with index returns too many results
  • SERVER-15673: Disable SSLv3 ciphers
  • SERVER-15639: Text queries can return incorrect results and leak memory when multiple predicates given on same text index prefix field
  • SERVER-15632: MultiHostQueryOp::PendingQueryContext::doBlockingQuery can leak a cursor object
  • SERVER-15629: GeoParser::parseMulti{Line|Polygon} does not clear objects owned by out parameter
  • SERVER-15598: Ubuntu 14.04 Enterprise packages depend on unavailable libsnmp15 package
  • SERVER-15580: Evaluating candidate query plans with concurrent writes on same collection may crash mongod
  • SERVER-15552: Errors writing to temporary collections during mapReduce command execution should be operation-fatal
  • SERVER-15528: Distinct queries can scan many index keys without yielding read lock
  • SERVER-15515: New test for mixed version replSet, 2.4 primary, user updates
  • SERVER-15500: New test for system.user operations
  • SERVER-15491: SyncSourceFeedback can crash due to a SocketException in authenticateInternalUser
  • SERVER-15485: CanonicalQuery::canonicalize can leak a LiteParsedQuery
  • SERVER-15403: $min and $max equal errors in 2.6 but not in 2.4
  • SERVER-15318: copydb should not use exhaust flag when used against mongos
  • SERVER-15233: Cannot run planCacheListQueryShapes on a Secondary
  • SERVER-14886: Updates against paths composed with array index notation and positional operator fail with error
  • SERVER-14799: Count with hint doesn't work when hint is a document
  • SERVER-14763: Update jstests/sharding/split_large_key.js
  • SERVER-14728: Shard depends on string comparison of replica set connection string
  • SERVER-14506: special top chunk logic can move max chunk to a shard with incompatible tag
  • SERVER-14299: For sharded limit=N queries with sort, mongos can request >N results from shard
  • SERVER-14287: ensureIndex can abort reIndex and lose indexes
  • SERVER-14249: Add tests for querying oplog via mongodump using --dbpath
  • SERVER-14184: Unused preprocessor macros from s2 conflict on OS X Yosemite
  • SERVER-14080: SERVER-8752 Have migration result reported in the changelog correctly
  • SERVER-14057: Changing TTL expiration time with collMod does not correctly update index definition
  • SERVER-14015: S2 Compilation on GCC 4.9/Solaris fails
  • SERVER-13726: indexbg_drop.js
  • SERVER-13595: Red Hat init.d script error: YAML config file parsing
  • SERVER-13471: Increase log level of "did reduceInMemory" message in map/reduce
  • SERVER-12472: Fail MoveChunk if an index is needed on TO shard and data exists
  • SERVER-12061: Do not silently ignore read errors when syncing a replica set node
  • SERVER-12058: Primary should abort if encountered problems writing to the oplog
  • SERVER-10069: Improve errorcodes.py so it captures multiline messages

New in MongoDB 2.8.0 RC 2 (Dec 6, 2014)

  • Bug SERVER-16279: rollback_too_new.js
  • Bug SERVER-16291: Cannot set/list/clear index filters on the secondary
  • Bug SERVER-16315: Replica set nodes should not threaten to veto nodes whose config version is higher than their own
  • Bug SERVER-15318: copydb should not use exhaust flag when used against mongos
  • Bug SERVER-16283: Can't start new wiredtiger node with log file or config file in data directory - false detection of old mmapv1 files
  • Bug SERVER-15986: Starting with different storage engines in the same dbpath should error/warn
  • Bug SERVER-16289: WiredTiger crashes due to NULL btree handle
  • Bug SERVER-16354: Memory leak in IndexCatalogEntry::setMultikey
  • Bug SERVER-16161: log heartbeat failures and cause
  • Task SERVER-16320: Temporarily disable v28_bad_upgrade_order.js, 2_test_launching_cluster.js
  • Improvement SERVER-16040: convert any invariantWTOK to wtRCToStatus where possible
  • Bug SERVER-16252: DBConnectionPool::flush should fully flush connection pool
  • Bug SERVER-16067: Contention on lockmgr buckets in MMAPv1
  • Bug SERVER-16333: hot replication mutex
  • Bug SERVER-15908: DBExplainQuery.addOption does not honor slaveOk
  • Task SERVER-15957: Get OperationContext for ReplicationCoordinator::signalDrainComplete from the caller
  • Task SERVER-15875: Remove "new" from newRunQuery, newGetMore, and new_find.{h,cpp}
  • Bug SERVER-16374: toostale.js assumes master is node 0
  • Bug SERVER-16306: auth2.js
  • Bug SERVER-16407: lock_mgr_test reports leaks under the ASAN build
  • New Feature SERVER-965: Store the indexes of a collection on another partition/drive (for example a SSD) than the documents
  • Bug SERVER-11066: Authentication failure not honored in replset health poll
  • Improvement SERVER-15310: kill all operations before attempting stepdown
  • Bug SERVER-16389: Try to stepdown before shutting down, even when using 'force'
  • Task SERVER-14143: Reenable JS interruption
  • Task SERVER-16373: Remove repl_set.h
  • Bug SERVER-16187: Invariant failure txn->lockState()->isDbLockedForMode(db, MODE_IS)
  • Bug SERVER-16375: Replication log message about vetoing can be truncated.
  • Bug SERVER-16332: Fix coverity defect in StorageEngineMetadata::write()
  • Bug SERVER-16055: Commands with empty string cause the server to terminate
  • Bug SERVER-16309: Fix rocks_recovery_unit
  • Bug SERVER-16217: Improve error message returned by replSetReconfig when node addition fails
  • Bug SERVER-16371: mixed_mode_repl.js, mixed_mode_repl_nossl.js
  • Bug SERVER-14462: db.currentOp doesn't report locking statistics
  • Bug SERVER-16376: get_last_error.js fails because it does not expect chaining to occur
  • Task SERVER-16302: Support "wiredTiger" in createCollection() options
  • Improvement SERVER-16397: Throttle migration rate in mr_during_migrate.js
  • Bug SERVER-15804: fix up replica set ramlog
  • Bug SERVER-16123: WT lsm panic
  • Bug SERVER-16143: WriteConflict returned to client with concurrent multikey index inserts
  • Bug SERVER-16328: Journal commits in write lock stat no longer relevant
  • Bug SERVER-16410: suppress missing-braces warning on clang
  • Bug SERVER-16184: repeated WriteBackListener error on out-of-order upgrade
  • Improvement SERVER-16032: Replication should not have multiple active OperationContexts on the same thread
  • Sub-task SERVER-15826: SERVER-15723 ConvertToCapped appears to be taking a G_X lock
  • Bug SERVER-16165: multi-update gets stuck retrying after WriteConflict
  • Improvement SERVER-16132: implement directoryperdb under WiredTiger
  • Task SERVER-14429: Don't modify ReplSettings object after startup
  • Bug SERVER-16391: Ensure jstests are agnostic to primary election
  • Bug SERVER-16294: WiredTiger __wt_meta_track_off crash
  • Bug SERVER-16259: rocks storage engine needs to support document locking
  • Improvement SERVER-16362: Defer audit doc creation and redaction until we have to log it
  • Improvement SERVER-6218: Profile documents should include partial query object instead of "too large" error
  • Improvement SERVER-16218: delay starting periodic tasks until after index building, at startup
  • Bug SERVER-15552: Errors writing to temporary collections during mapReduce command execution should be operation-fatal
  • Bug SERVER-15886: Caching of plan on rooted $or plan tie can lead to poor index choice
  • Bug SERVER-16256: $all clause with elemMatch uses wider bounds than needed
  • Bug SERVER-14057: Changing TTL expiration time with collMod does not correctly update index definition
  • Bug SERVER-16324: Command execution log line displays "query not recording (too large)" instead of abbreviated command object
  • Bug SERVER-15956: DBExplainQuery.readPref does not work
  • Improvement SERVER-16137: Validate collection options for all registered storage engines
  • Improvement SERVER-16233: add support for storage options to createIndex
  • Sub-task SERVER-14062: SERVER-1241 Remove the global OperationContext registry
  • Bug SERVER-16400: Trying to remove last voting member from replset gives strange error
  • Bug SERVER-16114: The touch command does not work with WiredTiger storage engine
  • Improvement SERVER-15938: Running enablesharding using 2.8 mongods with 2.6 mongos fails with obscure message
  • Bug SERVER-16160: "memberID" (of serverStatus.repl.slaves) should be "memberId"
  • Bug SERVER-16255: Enforced SCons minimum is insufficiently high to support TextFile
  • Improvement SERVER-16304: Shell command startParallelShell should print the process id

New in MongoDB 2.8.0 RC 1 (Nov 25, 2014)

  • Bug: tailable cursor may miss uncommitted documents
  • Bug: Deadlock with the WiredTiger storage engine between ListDatabases and DropCollection
  • Bug: replSetInitiate races with initial sync, resulting in no primary
  • Bug: WT Performance Regression for update of hot document on 2014-11-10 builds
  • Bug: Querying against path in document containing long array of subdocuments with nested arrays causes stack overflow
  • Bug: WriteConflict exception thrown in logOp during update
  • Bug: mongodump --repair not working under WiredTiger
  • Bug: After hitting open file limits - WT goes into a loop at shutdown and needs forced kill
  • Bug: Re-enable rollback_too_new.js with logic that doesn't violate WT oplog assumptions
  • Task: make maxSyncSourceLagSecs.js resilient against incorrect primary being elected
  • Bug: Hang during initial sync of 2.8.0-rc0 (wiredtiger)
  • Bug: Fail initial sync if cloner has index/data errors
  • Bug: Race in initiate causing no primary to be electable
  • Bug: Periodic throughput pauses during write load on WT
  • Bug: MongoD 2.8rc0 terminates with "WiredTigerRecordStore::insertRecord 12: Cannot allocate memory"
  • Bug: Improve namespace construction in commands
  • Improvement: invariant, not dassert on all CollectionMetadata reload codepaths
  • Bug: $explain query against sharded collection with 2.6 shard returns error
  • Bug: 2.8.0-rc0 shell can't auth to a 2.4 server
  • Bug: Input validation on the arguments to createCollection
  • Bug: geo_2d_explain.js is not deterministic
  • Improvement: createCollection shell helper should take noPadding param and warn on usePowerOf2Sizes
  • Improvement: Re-enable test from SERVER-10341
  • Bug: All callbacks invoked by WiredTiger (and other C) storage engines must terminate rather than propagate exceptions
  • Bug: geo_s2ordering.js depends on server performance
  • Bug: Rocks storage engine build break
  • Bug: Missing state change logging for replica set members
  • Improvement: Increase unit test coverage replica_set_config_checks functions
  • Bug: Make sure stepDown command can be interrupted with killop
  • Bug: Stacktrace in logs after creating collection with invalid options
  • Bug: Invariant failure when running explained update
  • Bug: tcmalloc issues with OS X 10.10
  • Task: explain shell helpers should retry using $explain if explain command fails on a mixed version sharded cluster
  • New Feature: Add configure time checks to enforce compiler minima
  • Bug: deadlock at shutdown
  • Bug: Uninitialized value used in SCRAM code
  • Bug: dropDatabase is slow and returns success immediately though it then blocks progress while running
  • Bug: Regex query returns incorrect results when index is present
  • Bug: $in count query with null array does not yield error on empty collection
  • Bug: misleading "closing cursor" message when retrying stale version
  • Improvement: consolidate WriteConflictException retry logging logic
  • Improvement: remove excessive log syncing in WT size storer
  • Bug: Contention on mutex protecting canAcceptWritesForDatabase access with WT
  • Bug: Server aborts when querying specific polygon/linestring intersections
  • Bug: Exponentially back off for write conflict exceptions.
  • Bug: Logically dead code in CachedPlanStage
  • Improvement: Add argument to replSetStepDown to allow users to specify how long to wait for secondaries to catch up
  • Improvement: Add replica set downgrade test.
  • Sub-task: SERVER-1241 Move audit message up and out of MMAPv1 layer
  • Bug: Make it possible to get the return code from startParallelShell
  • Bug: No error message for invalid config in mixed version replset
  • Bug: ResourceId constructors use operator% where they should use operator& for bit masking
  • Sub-task: SERVER-15541 Query stages should clear/set their OperationContext pointer in saveState()/restoreState()
  • Task: Disable getIteratorForRepair in WiredTiger
  • Bug: do not compare pointer addresses in WT Iterator::restoreState()
  • Improvement: Remove extra Timer and std::string in AutoGetCollectionForRead
  • Bug: CanonicalQuery leaks in mr::MapReduceCommand::run(), mr::State::finalReduce(), newRunQuery()
  • Bug: replSetStepDown without force argument will fail if secondaries are behind and there is any write load
  • Improvement: Server should not fassert on invalid wiredtiger config options
  • New Feature: Prevent starting a 2.8 server with 2.4 style users
  • Bug: WT show performance regression comparing to 10/31 build
  • Bug: drop queued WT idents on startup
  • Improvement: Add special WT_CONNECTION::reconfigure command
  • Improvement: reads often aren't possible while in fsync and lock mode
  • Improvement: Detect if JSThread threw JS or C++ exception
  • Sub-task: SERVER-1241 Reenable killall.js after implementing priorities for the shutdown X-lock thread
  • Bug: replication should stop on inShutdown
  • Bug: We need to call commitAndRestart on the active recovery unit before releasing our last lock
  • Sub-task: SERVER-15541 audit re-enabled yielding paths for sharding
  • Improvement: mongo::profile() shouldn't reuse BufBuilder when profile collection created
  • Bug: jsCore in small oplog failing during shutdown in ASAN build
  • Bug: rocks storage engine should deal with nested recovery units correctly
  • Bug: Add currentOpCtx command to the auth test suite
  • Task: unit test new majority write behavior in ReplicationCoordinator
  • Bug: Batched insert command does not yield
  • Improvement: Use WT bulk loader for foreground index builds
  • Bug: Segfault in prefetch worker when replicating an insert that creates a database implicitly
  • Bug: Lock manager should expose methods that separate enqueuing a lock request and waiting for it to be satisfied
  • Bug: Command parameters not redacted for LOG(2)
  • Task: Rename heap1 internal classes and filenames to inMemory
  • Bug: Enable Ulimit warning on Linux
  • Task: Unify implementation and error code usage of checkForInterrupt and checkForInterruptNoAssert
  • Improvement: Remove sharding_balance_randomorder1.js
  • Bug: Do not announce a 'yea' vote when not voting 'yea'
  • Task: Add storage engine config options to smoke.py and jstests
  • Bug: clear oplog before starting initial sync
  • Bug: remove _forceLegacyShardWriteMode from v2.8 mongos
  • Bug: exiting with SIGINT during WT initialization can fassert
  • Task: Remove LegacyReplicationCoordinator and rip out dead code
  • Bug: Shell method DBExplainQuery.count() should return the explain results, not 'this'
  • Task: Change wiredtiger engine name to wiredTiger for consistency
  • Bug: The "isMultiKey" value is not correct in the output of aggregation explain plan
  • Bug: listIndexes and listCollections can be run on secondaries without slaveOk bit
  • Improvement: Suppress non-applicable profiling data when using WT
  • Improvement: invariantOK that takes a status
  • Bug: Updates against paths composed with array index notation and positional operator fail with error
  • Bug: NamespaceString is inconsistently validating collection names
  • Improvement: Remove authenticate messages from --quiet logging
  • Improvement: Expose electionId on primary in isMaster
  • Improvement: Simplify log component names
  • Bug: Repeated "[ReplicationExecutor] could not find member to sync from" in healthy replica set
  • Bug: benchRun should not abort shell when worker threads fail to connect to server
  • Improvement: mongod --version shouldn't print date, severity, log component
  • Bug: no space in between collection and name for drop index errmsg
  • Bug: Windows service: net stop MongoDB gives an error even after stopping the service
  • Bug: Typo in '__system user/no --keyFile' error message

New in MongoDB 2.6.5 (Oct 9, 2014)

  • Sub-task SERVER-15319: Verify 2.8 freelist is upgrade-downgrade safe with 2.6
  • Bug SERVER-14829: UpdateIndexData::clear() should reset all member variables
  • Bug SERVER-15038: Multiple background index builds may not interrupt cleanly for commands, on secondaries

New in MongoDB 2.6.4 (Aug 12, 2014)

  • Fix for text index where under specific circumstances, in-place updates to a text-indexed field may result in incorrect/incomplete results SERVER-14738
  • Check the size of the split point before performing a manual split chunk operation SERVER-14431
  • Ensure read preferences are re-evaluated by drawing secondary connections from a global pool and releasing back to the pool at the end of a query/command SERVER-9788
  • Allow read from secondaries when both audit and authorization are enabled in a sharded cluster SERVER-14710

New in MongoDB 2.7.4 Dev (Jul 28, 2014)

  • Bug SERVER-14556: Default dbpath for mongod --configsvr changes in 2.6
  • Bug SERVER-14311: skipping of index keys is not accounted for in plan ranking by the index scan stage
  • Bug SERVER-14431: Invalid chunk data after splitting on a key that's too large to index
  • Bug SERVER-14283: Parameters in installed config file are out of date
  • Bug SERVER-14538: use-after-free in mongo::profile
  • Improvement SERVER-14690: no_chaining.js is flakey
  • Task SERVER-14532: Improve logging in the case of plan ranker ties
  • Bug SERVER-14494: Dropping collection during active background index build on secondary triggers segfault
  • Bug SERVER-14505: cannot dropAllIndexes when index builds in progress assertion failure
  • Bug SERVER-14355: Failed to create capped collection for profiling
  • Bug SERVER-14212: Mongorestore: using --drop drops Admin users & roles
  • Bug SERVER-14024: Update fails when query contains part of a DBRef and results in an insert (upsert:true)
  • Bug SERVER-6687: Valgrind reports "Syscall param write(buf) points to uninitialised byte(s)" on config servers
  • Improvement SERVER-13648: better stats from migration cleanup
  • Bug SERVER-12750: mongos shouldn't accept initial query with "exhaust" flag set
  • Bug SERVER-14625: Query planner can construct incorrect bounds for negations inside $elemMatch
  • Bug SERVER-14607: hash intersection of fetched and non-fetched data can discard data from a result
  • Bug SERVER-14123: explain can create a too-large BSONObj
  • New Feature SERVER-14518: Allow disabling hostname validation for SSL
  • Bug SERVER-14665: Build failure for v2.6 in closeall.js caused by access violation reading _me
  • Bug SERVER-14284: jstests should not leave profiler enabled at test run end
  • Improvement SERVER-9561: Add HOST_ARCH and TARGET_ARCH (and other SCons MS vars) as Variables for MSVC build
  • Bug SERVER-14476: JSTests::invokeLogError log check is still flawed
  • Bug SERVER-14641: replication cannot keep up in zbigMapReduce.js
  • Bug SERVER-14599: Fix error that caused ReplicationExecutor::getWork to busy wait on some platforms
  • Improvement SERVER-14526: Introduce unittest macros that allow inspecting the exception thrown in ASSERT_THROWS.
  • Task SERVER-14587: Allow OIDs to be stored in unordered_maps
  • Improvement SERVER-14586: add toBSON methods to ReplicaSetConfig and MemberConfig classes
  • Bug SERVER-14522: add fassertFailedWithStatus to errorcodes.py
  • Improvement SERVER-14436: Implement new types to represent replica set configuration.
  • Bug SERVER-14581: mongod doesn't compile with cpu-profiler option
  • New Feature SERVER-14416: extend setParameter to accept BSON object
  • Improvement SERVER-14653: Allow streaming into ASSERT_TRUE and ASSERT_FALSE unittest macros
  • Task SERVER-14560: Add cancelHeartbeats
  • Improvement SERVER-14524: decompose jsobj.cpp
  • Improvement SERVER-14656: replSetSyncFrom helpers in topology coordinator
  • Improvement SERVER-14527: MongoDB servers processes should only setLastError when wire writes or write commands fail.
  • Improvement SERVER-12751: BSONBuilderBase is unused in the codebase
  • Sub-task SERVER-10448: Allow stats to be gathered directly from the execution stages
  • Sub-task SERVER-13641: Move killCurrentOp out of threadlocal
  • Improvement SERVER-14499: remove ReplicationStartSynchronizer
  • Improvement SERVER-14592: deinline bson-inl.h
  • Task SERVER-14517: Add doMemberHeartbeat
  • Task SERVER-14503: move hasDatabases from instance.cpp to heartbeat.cpp
  • Bug SERVER-14299: For sharded limit=N queries with sort, mongos can request >N results from shard
  • New Feature SERVER-11118: Add dateToString aggregation operator
  • Bug SERVER-14502: dereference of canonical query before NULL check in getExecutorIDHack()
  • Improvement SERVER-14528: Move HostAndPort::me functionality out of HostAndPort type.
  • Bug SERVER-14671: s2 fails to compile on clang
  • Improvement SERVER-14613: Refactor HeartbeatInfo and health
  • Improvement SERVER-14437: Implement new data structures to represent replica set tag information
  • Bug SERVER-14685: sharding/auth.js test is flaky
  • Improvement SERVER-14417: migrate QLOG to kQuery LogComponent
  • Improvement SERVER-14500: remove the replSet bool
  • Task SERVER-14652: Update tests for localhost exception
  • Task SERVER-14484: remove the replset portion of dbtest
  • Bug SERVER-14549: Race condition can cause replSetUpdatePosition command to be sent with information about nodes that the sync source doesn't yet know about
  • Sub-task SERVER-14624: Implement methods to validate replica set configuration changes
  • Task SERVER-14316: Remove addUser function from the shell
  • Improvement SERVER-14533: Break circular dependence in build system among foundation, network and lasterror libraries.
  • Bug SERVER-9986: Refactor $geoNear searches into new query framework
  • Bug SERVER-14645: Failure in rollback_cmd_unrollbackable.js
  • Bug SERVER-5436: IPv6 address ambiguity in HostPort syntax
  • New Feature SERVER-12512: Add role-based, selective audit logging.
  • Bug SERVER-14554: DBRef JS constructor does not accept $db with --js-engine=v8-3.25
  • New Feature SERVER-14415: log component hierarchy
  • Sub-task SERVER-14407: Get rid of query runners
  • Task SERVER-14420: Get rid of global replSettings object
  • Bug SERVER-11107: By default, mongod should not start with an expired or invalid server certificate
  • Improvement SERVER-6352: Add sh.removeTagRange(ns, min, max, tag)
  • Improvement SERVER-14041: enhance secondaryThrottle parameter
  • Task SERVER-14550: Stop maintaining the local.slaves collection
  • Improvement SERVER-14582: ReplSetTest.waitForIndicator should work with auth on even when primary is down
  • Sub-task SERVER-14591: Implement getLastErrorDefault inside replcoordinator
  • Task SERVER-14395: dur::startup() should only be called when using mmapv1 engine
  • Sub-task SERVER-14458: Add hybrid ReplicationCoordinator to facilitate the transition from the LegacyReplicationCoordinator to the new ReplicationCoordiantorImpl
  • Task SERVER-14559: Add processNewConfig workflow
  • Bug SERVER-13764: debug mechanisms report incorrect nscanned / nscannedObjects for updates
  • Improvement SERVER-14650: Rename ROLE_SOURCE_FIELD_NAME to ROLE_DB_FIELD_NAME
  • Improvement SERVER-14482: Add ability to append RegEx using BSONArrayBuilder
  • Improvement SERVER-4282: clean up log messages
  • Bug SERVER-13177: mongooplog crashes on assertion when it cannot connect to "from" host
  • Bug SERVER-13730: rs.help() link to REST interface is incorrect
  • Task SERVER-14536: Helgrind suppressions for race-prone counters.cpp code
  • Improvement SERVER-5668: Add appendBinData method to BSONArrayBuilder

New in MongoDB 2.7.3 Dev (Jul 4, 2014)

  • Equality queries on _id with projection on _id may return orphan documents on sharded collections
  • Equality queries on _id with projection may return no results on sharded collections
  • stepdown during migration range delete can abort mongod
  • SEVERE server crash when $centerSphere has non-positive radian
  • negative opcounter values in serverStatus
  • do not aggressively pre-fetch data for parallelCollectionScan
  • SERVER-14135 replSetReconfig and initial config loading through the LegacyReplicationCoordinator
  • SERVER-14135 Move command processing into the ReplicationCoordinator
  • SERVER-14135 setLastOptime for slave replication tracking in LegacyReplicationCoordinator
  • SERVER-14135 awaitReplication in LegacyReplicationCoordinator
  • SERVER-14135 setLastOptime and awaitReplication in new Replication Coordinator
  • SERVER-14135 stepdown and shutdown functionality in LegacyReplicationCoordinator
  • Remove unused files in 2.7 branch
  • De-inline HostAndPort type, and remove dependencies on networking components.
  • Move HostAndPort::isSelf to a free function in the repl namespace
  • mongos does not respect secondary preferred after temporarily unavailable secondary
  • when a socket between mongos and mongod fails, close all connections immediately
  • Support for Debian 7 Enterprise .deb packages
  • Additional tests for setting fields with $ names
  • struct for ReplicationExecutor work callback parameter
  • Add StringData() method to BSONElement
  • Remove hardcoded Visual Studio solution and project files
  • Do not store native function pointer as a property in function prototype
  • Fix include-what-you-use fallout from de-inlining hostandport.h
  • make index_multi.js retry on connection failure
  • initial_sync3.js occasionally fails by calling insert on a non-primary node
  • mongorestore has no way to accept input from stdin
  • SERVER-10448 Explain Command for Explaining Count
  • clean quota api internally
  • mongoimport doesn't support $maxKey and $minKey extended JSON
  • Replace i686 in Linux-32 tarball filename and inner directory name with i386
  • Deprecate mongoutils namespace
  • Reenable sasl_authentication_session_test
  • remove getIndexPrefetchConfig calls from outside the repl namespace
  • eliminate isCurrentlyAReplSetPrimary
  • Improve errorcodes.py so it captures multiline messages
  • SERVER-1241 Prototype Lock Manager for document-level locking
  • SERVER-10448 Execution Explain for Find
  • Introduce HostAndPort::parse method
  • ConnectionString constructor should either work correctly or fail to compile when passed a single string.
  • avoid attempting to reconfig before node 3 comes back online in reconfig.js
  • better named logging with tracing
  • Primary should step down if encountered problems writing to the oplog
  • Introduce unittest::assertGet(StatusWith) method to facilitate testing functions that return StatusWith
  • Dead code in IDHackRunner::applyProjection
  • mongod fails when launched with misconfigured locale
  • mongoexport generates 'ObjectID', while the shell is using 'ObjectId'
  • canonicalizeClusterDN may synthesize an invalid iterator
  • Increase log level of "did reduceInMemory" message in map/reduce
  • rs.add could detect _id
  • Upstart configuration fails to start server if other instances are running
  • mongorestore parseMetadataFile passes non-null terminated string to 'fromjson'
  • convert HashTable::iterAll() to use boost::bind instead of function callback
  • Add ability to print/decode top level JSON Array
  • --use-system-yaml does not detect libyaml-cpp-dev
  • geoNear should not allow $natural
  • distinct command should validate input
  • ShardingTest and authutil js incorrectly handle keyfile authentication
  • Position of parameters within out {} object shouldn't matter
  • mongoperf crashes randomly when writing with MMF and record size >4k

New in MongoDB 2.6.3 (Jun 23, 2014)

  • Equality queries on _id with projection may return no results on sharded collections SERVER-14302.
  • Equality queries on _id with projection on _id may return orphan documents on sharded collections SERVER-14304.

New in MongoDB 2.6.2 (Jun 18, 2014)

  • Query plans with differing performance can tie during plan ranking SERVER-13675.
  • mongod may terminate if x.509 authentication certificate is invalid SERVER-13753.
  • Temporary map/reduce collections are incorrectly replicated to secondaries SERVER-13981.
  • mongos incorrectly targets multiple shards for nested field shard key predicates SERVER-14138.
  • rs.stepDown() during mapReduce causes fassert when writing to op log SERVER-14186.

New in MongoDB 2.6.2 RC 1 (Jun 10, 2014)

  • Fixed:
  • mapReduce replicates _inc temp collection without _id field
  • Plans with differing performance can tie during plan ranking
  • mongod may terminate if x.509 authentication certificate is invalid
  • Make sure user cache entry is up to date before using it to determine a user's roles in user management commands on mongos
  • We don't mark V1 users as probed on databases for which they do not have surrogate user documents
  • IndexBounds::endKeyInclusive not initialized by constructor
  • Unused snapshot history consuming significant heap space
  • sync2.js failed
  • Test suites with options tests fail when run with --nopreallocj
  • "Whole index scan" query solutions can use incompatible indexes, return incorrect results
  • Index bounds builder constructs invalid bounds for multiple negations joined by an $or
  • Cloner needs to detect failure to create collection
  • noscripting configuration option not available in YAML configuration file
  • Stack overflow when parsing deeply nested $not query
  • Insert field validation stops at first Timestamp field
  • ConvertToCapped on empty collection aborts after invariant() failure
  • Add new lsb file location for Debian 7.1
  • tags.js has been flakey due to change in its timeout when it was ported to use write commands
  • Distinct command on indexed field with geo predicate fails to execute
  • Unable to install mongodb-org-server 2.6.1-1 on RHEL5 via RPM
  • Mongodump cannot query oplog.$main or oplog.rs when using --dbpath
  • mongodb-enterprise is missing needed dependency list
  • Bounds should not be combined for $or queries that can use merge sort
  • MongoDB upgrade 2.4 to 2.6 check returns error in internal collections
  • Solaris builds depend on ILLUMOS libc
  • Some nested queries trigger an assertion error
  • CollectionOptions parser should skip "size"/"max" elements if values non-numeric
  • mongoexport crashes on large timestamps on Windows
  • Windows file locking related buildbot failures
  • The built-in roles "restore" doesn't have insert privileges on system.roles collection
  • Converting v8 internal object to JSON may crash
  • planSummary truncated at 255 characters
  • verify assert on empty $in clause and sort on second field in compound index
  • Catch exception thrown by getShardsForQuery for geo query
  • Results of $near query on compound multi-key 2dsphere index not sorted by distance
  • SSL-enabled server appears to not be sending the list of supported certificate issuers to the client
  • getRunner() returns a bad runner when mixing $or, sort, and NO_BLOCKING_SORT
  • non-top-level indexable $not triggers query planning bug
  • Queries containing $or may miss results if multiple clauses use the same index
  • Shell returns incorrect WriteResult for compatibility-mode upsert with non-OID equality pred on _id field
  • The "backup" auth role should allow running the "collstats" command
  • Moving large collection across databases with renameCollection triggers fatal assertion
  • Excessive freelist scanning for MaxBucket
  • connections_opened.js failure
  • setup_multiversion_mongodb.py doesn't download 2.4.10 because of non-numeric version sorting
  • ndeleted in system.profile documents reports 1 too few documents removed
  • "type 7" (OID) error when acquiring distributed lock for first time
  • Shell prints startup warning when auth enabled
  • Improved:
  • Need to expose better timing information in currentOps
  • awaitReplication() sometimes fails to get a config version from master causing test failures
  • Match x.509 cluster certificates per attribute instead of substring comparison
  • when 1st config server is non-responsive, some operations wait for network timeout
  • Add planSummary information to count command
  • log a message when shouldChangeSyncTarget() believes a node should change sync targets
  • Typo in error message for "compatibility mode"

New in MongoDB 2.7.1 Dev (May 28, 2014)

  • Fixed:
  • mapReduce replicates _inc temp collection without _id field
  • mongod crashes when re-mapping above user address space of 8TB on Windows
  • VS 2013 32-bit binaries do not run on Windows XP
  • Make sure user cache entry is up to date before using it to determine a user's roles in user management commands on mongos
  • We don't mark V1 users as probed on databases for which they do not have surrogate user documents
  • IndexBounds::endKeyInclusive not initialized by constructor
  • The built-in roles "restore" doesn't have insert privileges on system.roles collection
  • Unused snapshot history consuming significant heap space
  • Bounds should not be combined for $or queries that can use merge sort
  • sync2.js failed
  • Converting v8 internal object to JSON may crash
  • Test suites with options tests fail when run with --nopreallocj
  • "Whole index scan" query solutions can use incompatible indexes, return incorrect results
  • Mongodump cannot query oplog.$main or oplog.rs when using --dbpath
  • Windows file locking related buildbot failures
  • Index bounds builder constructs invalid bounds for multiple negations joined by an $or
  • Insert field validation stops at first Timestamp field
  • Add new lsb file location for Debian 7.1
  • Some nested queries trigger an assertion error
  • Unable to install mongodb-org-server 2.6.1-1 on RHEL5 via RPM
  • CollectionOptions parser should skip "size"/"max" elements if values non-numeric
  • Shell returns incorrect WriteResult for compatibility-mode upsert with non-OID equality pred on _id field
  • Running resync before replset initializes can crash mongod
  • Coverity analysis defect 15490: Logically dead code
  • prevent updateUpstream from using a null connection
  • ExtentManager interface
  • Leave false config file switches in getCmdLineOpts.parsed
  • Red Hat init.d script error: YAML config file parsing
  • Coverity analysis defect 22903: Dereference null return value
  • Use RAII to prevent memory leaking in shard targeting
  • Improvement:
  • awaitReplication() sometimes fails to get a config version from master causing test failures
  • mongod could warn user if OS transparent huge pages feature is on
  • Match x.509 cluster certificates per attribute instead of substring comparison
  • log a message when shouldChangeSyncTarget() believes a node should change sync targets
  • Provide richer unwind information in logged stack traces on POSIX systems.
  • Improve user cache invalidation enforcement on mongos
  • User cache is invalidated too often and too crudely
  • Javascript code should throw instances of Error instead of strings.
  • On Windows, windows_basic.h should error if we don't have both NTDDI_VERSION and _WIN32_WINNT
  • relax merge chunk constraints
  • enable build on arm64 system
  • Provide implementation of AtomicWord in terms of std::atomic

New in MongoDB 2.6.1 (May 6, 2014)

  • Includes all the changes featured in the previous Beta versions

New in MongoDB 2.6.1 RC 0 (Apr 23, 2014)

  • Fixed:
  • Concurrent GETMORE and KILLCURSORS operations can cause race condition and server crash
  • Changing replica set configuration can crash running members
  • Array updates on documents with more than 128 BSON elements may crash mongod
  • Background index builds from a 2.6.0 primary fail to complete on 2.4.x secondaries
  • Using the OplogReplay flag with extra predicates can yield incorrect results
  • Replicated data definition commands will fail on secondaries during background index build
  • Sensitive credentials in startup options are not redacted and may be exposed
  • Upgrading from 2.4.x to 2.6.0 via yum clobbers configuration file
  • Cannot install MongoDB as a service on Windows
  • mongos does not generate _id for insert documents that are missing it
  • geoNear returns distance in meters for legacy points in 2.6
  • replset2.js can swallow assertion failures in test
  • stepdown_wrt_electable.js makes unsafe use of parallel shells and is unstable as a result
  • Ignore orphan documents in sharding_migrate_cursor1.js
  • some query stage constructors touch disk
  • mr_drop.js is flakey when run in parallel with other tests
  • Remove data in test array_shard_key.js
  • rollback5.js can fail due to poor assumptions it makes
  • Queries using tailable cursors only return one batch if combined with skip()
  • initial sharding with hashed shard key can result in duplicate split points
  • geonear command creating too-large BSONObjs
  • negation of $elemMatch value incorrect in 2.6
  • $where should not be allowed under $elemMatch
  • Improve wire API message validation
  • 2.6.0 does not recognize all sort orders provided by a compound index if the index has trailing fields
  • near queries must ensure legacy points are in bounds
  • $elemMatch using a compound multikey index can generate an incorrect plan
  • Creating index with same name but different spec in mixed version replicaset can abort replication
  • Yield policy for batch-inserts should be the same as for batch-updates/deletes
  • Large skip and and limit values can cause crash in blocking sort stage
  • Log rotation can overwrite previous log files
  • fix geo_borders.js
  • Wait for deletion after migration in feature2.js
  • Explode for sort should try reversing index scan direction
  • Write-error contains incorrect namespace when collection creation fails
  • Improved:
  • Addition of debug symbols has doubled compile time
  • getUser and getRole shell helpers shouldn't throw when user/role not found
  • Negations over multikey fields do not use the index

New in MongoDB 2.4.10 (Apr 5, 2014)

  • Fixed:
  • Two background index builds in parallel with unique key constraint violations crashes secondary
  • attempting to create a 10th index, with unique constraint violations corrupts db
  • Stopping a secondary in phase 2/3 of an index build corrupts the index
  • initSyncV1Index.js too close to timeout threshold; flapping test
  • mongod 2.4 should not start if unknown indexes present
  • Creating an index on system.indexes breaks initial sync of secondary
  • Version 2dsphere indexes
  • balancer aggressively retries when inconsistency is detected
  • sigxcpu not logged
  • Do not call relinquish() when not vetoing an election
  • Unable to move hashed shard key chunks created by numInitialChunks
  • Memory leak in md5sumFile shell utility method (coverity auto-detected)
  • replicaset nodes appear to be down during compact
  • Abnormal termination of concurrent index builds can lead to a corrupt index catalog
  • Bug in v8 memory allocator that causes long-running shell to crash
  • SNMP: MIB fails validation
  • MongoDB crash on startup on linux system when unable to check readahead due to limited permissions
  • Don't move chunks for non-empty hashed collection during shardCollection cmd
  • Improved:
  • GridFS chunks collection should lower chunk size to 255k
  • Value::coerceToString() shouldn't unconditionally construct a stringstream
  • Add more info when movePrimary fails in prefix_shard_key.js
  • Start election if more than one primary is online
  • upon clock skew detection, sync directly from a primary
  • add indexes to config.locks and lockpings collection for large numbers of sharded collections

New in MongoDB 2.6.0 RC 3 (Apr 3, 2014)

  • Fixed:
  • Invalid nested config values ignored
  • getCmdLineOpts.parsed showing journal field in wrong place

New in MongoDB 2.4.10 RC 0 (Mar 27, 2014)

  • Fixed:
  • _id with $prefix field causes replication failure due to unvalidated insert
  • Creating an index on system.indexes breaks initial sync of secondary
  • balancer aggressively retries when inconsistency is detected
  • replicaset nodes appear to be down during compact
  • sigxcpu not logged
  • Bug in v8 memory allocator that causes long-running shell to crash
  • Coverity analysis defect 10177: leaked_storage: Variable "f" going out of scope
  • Do not call relinquish() when not vetoing an election
  • Unable to move hashed shard key chunks created by numInitialChunks
  • SNMP: MIB fails validation
  • MongoDB crash on startup on linux system with a grsec patched kernel and grsec sysfs restrict activated
  • Two background index builds in parallel with unique key constraint violations crashes secondary
  • Stopping a secondary in phase 2/3 of an index build corrupts the index
  • Static Initalizer race condition with CreateDirectClient and server-side Javascript
  • attempting to create a 10th index, with unique constraint violations corrupts db
  • mongod 2.4 should not start if unknown indexes present
  • Version 2dsphere indexes
  • initSyncV1Index.js too close to timeout threshold; flapping test
  • KillOp of a background index after building a foreground index corrupts
  • Don't move chunks for non-empty hashed collection during shardCollection cmd
  • Improved:
  • Start election if more than one primary is online
  • Value::coerceToString() shouldn't unconditionally construct a stringstream
  • upon clock skew detection, sync directly from a primary
  • GridFS chunks collection should lower chunk size to 255k
  • add indexes to config.locks and lockpings collection for large numbers of sharded collections
  • Add more info when movePrimary fails in prefix_shard_key.js

New in MongoDB 2.6.0 RC 2 (Mar 22, 2014)

  • Fixed:
  • createIndexes command should be explicitly logged
  • performance regression wrt 2.4 on simple covered projections
  • rollback4.js fails to elect a new primary

New in MongoDB 2.6.0 RC 1 (Mar 7, 2014)

  • Fixed issues:
  • Equality queries on _id don't obey skip()
  • adding projection causes multiKey index query fall back to collection scan
  • Improvement:
  • Penalize ixisect during plan scoring so that it won't get chosen over faster single-index plans

New in MongoDB 2.6.0 RC 0 (Feb 22, 2014)

  • Fixed issues:
  • Improvement SERVER-8412: repairDatabase: no Cloner, and use multi index builder
  • Bug SERVER-12131: Tests for multi version dump and restore
  • Bug SERVER-11982: connection error when doing sharded cluster upgrade following recommended procedure

New in MongoDB 2.5.5 Dev (Feb 1, 2014)

  • New:
  • New write operation method for insert, update, remove
  • Bug fixes:
  • SNMP Agent does not start
  • Add module suite support to smoke.py

New in MongoDB 2.4.9 (Jan 11, 2014)

  • Bug fixes:
  • misplaced openssl callback registration can cause crashes
  • clang compiled mongo shell crashes on exit with a stack trace in v8
  • logging in ~ReplicaSetMonitor() crashes
  • Non-numeric expiresAfterSeconds causes bad TTL query
  • Shell stops working after long autocomplete operation
  • Failure to rollback usePowerOf2Sizes should not cause fatal error
  • SERVER-11869 Support for non-client opTime in mongod GLE
  • $where inside of projection $elemMatch causes segmentation fault
  • Passing $where predicate to db.currentOp() crashes mongod
  • Cannot set false setParameter options in config file
  • textIndexVersion compatibility check not complete
  • writeback listener may not get correct code back from ClientInfo::getLastError
  • Mongos cannot do slaveOk queries when primary is down
  • New sharded connections to a namespace trigger setShardVersion on all shards
  • retry logic for read preferences should also apply on lazy recv() network failure
  • slaveok versioning logic in mongos should also apply to read prefs
  • Modifying collection options can cause restores of collection to fail

New in MongoDB 2.4.9 RC 0 (Dec 27, 2013)

  • Fixes:
  • SERVER-11494: textIndexVersion compatibility check not complete
  • SERVER-11194: Non-numeric expiresAfterSeconds causes bad TTL query
  • SERVER-7246: Mongos cannot do slaveOk queries when primary is down

New in MongoDB 2.5.4 Dev (Nov 19, 2013)

  • Fixed issues:
  • SERVER-11575: aggregation: optimize $sort on sharded setup to do a proper merge on mongos
  • SERVER-10493: Update tools to support backing up and restoring user data properly with new user format 2.6

New in MongoDB 2.4.8 (Nov 2, 2013)

  • Increase future compatibility for 2.6 authorization features SERVER-11478.
  • Fix dbhash cache issue for config servers SERVER-11421.

New in MongoDB 2.4.7 (Oct 22, 2013)

  • Bug fixes:
  • Do not veto if "primary" is the node trying to be elected
  • slaveOk bit ignored for unsharded aggregate
  • Improved:
  • Allow to skip initial count() in mapreduce

New in MongoDB 2.5.3 Dev (Oct 19, 2013)

  • Inconsistent naming for indexOnly between cursor.explain() and aggregation explain
  • Update $push + $sort should be able to sort by the whole array element
  • $anyElementTrue and $allElementsTrue operator for agg

New in MongoDB 2.4.7 RC 0 (Oct 11, 2013)

  • Bug fixes:
  • Do not veto if "primary" is the node trying to be elected
  • slaveOk bit ignored for unsharded aggregate
  • Improved:
  • Allow to skip initial count() in mapreduce

New in MongoDB 2.5.2 Dev (Aug 27, 2013)

  • New Feature:
  • aggregation: unsharded support $out
  • Sub-task:
  • Extend Aggregation Query Language to Support Complex Redactions
  • Set operations for Aggregation Framework $project

New in MongoDB 2.4.6 (Aug 21, 2013)

  • New Features:
  • Add a global flag to turn off the TTLMonitor thread
  • Improvements:
  • Add blockCheckSupported() features to Solaris/SmartOS build
  • Every write to journal costs additional seek to update file metadata
  • Display chunk version, not memory address, in non-default log line
  • Sanity check on "from" side that all cloned and modified documents were sent to TO side on commit
  • Bug fixes:
  • Sorting on chunks not applied in differ
  • Heatbeats can time out due to high network latency while fetching oplog batches. Was: buildbot: zbigMapReduce failing on Linux 64-bit DEBUG
  • File processinfo_darwin.cpp missing from mongo-cxx-driver
  • Missing PF_LOCAL symbol in Solaris 10
  • Solaris file relocation error: posix_fadvise
  • Missing external symbol strcasestr on Solaris 10
  • sharding/index1.js failure on V2.4 Linux 64-bit Subscription SUSE 11
  • buildbot: replset9.js failing on Linux RHEL 32-bit
  • buildbot-special: smoke JsobjTests::BufBuilderReallocLimit failing on Nightly Linux 64-bit SSL Ubuntu 1204
  • Shell displays "JavaScript execution failed: " before all JavaScript errors, adds "L" before line number
  • saslStart returns {ok: 1} instead of {ok:0, code: 2} when unsupported mechanism specified.
  • Server in replication set fluctuates between states SECONDARY and ROLLBACK if it can't rollback due to too much rollback data
  • balancer should stop when ConfigServerCheck indicates inconsistency
  • remapPrivateView: Solaris mmap() is not atomic
  • Failed SSL connection memory leak
  • On Solaris, link to backtrace() at run-time or emulate it if not found
  • js fails when balancer interferes
  • src/mongo/util/stacktrace.{cpp,h} are missing license headers
  • Very large documents can cause premature migration commit
  • Simple client fail with segmentation fault in mongoclient library
  • Fail if javascript field names have nulls
  • read_pref_cmd.js failed on multiple v2.4 builders
  • strcasestr emulation returns invalid pointer
  • mongo shell crashes with missing host
  • chaining.js timing out on OS X 10.5 64-bit, Windows 64-bit, Linux 64-bit
  • replication tests with auth fail on V2.4 Linux 64-bit Subscription SUSE 11
  • mongod always split at 250000 position
  • finding start cursor can get starved
  • remove2.js failed on special V2.4 Linux 64-bit SSL SUSE 11 Build #157
  • auto2.js failing on Win32 builder
  • chaining.js failed on Linux 64-bit subscription, "error doing query"
  • Do not change code pages in Windows version of mongo shell
  • Add more details on why a shard is 'unavailable' for balancing
  • Possible bug with SSL handshake

New in MongoDB 2.4.6 RC 1 (Aug 13, 2013)

  • Fixed:
  • Possible bug with SSL handshake
  • Very large documents can cause premature migration commit
  • Improved:
  • Sanity check on "from" side that all cloned and modified documents were sent to TO side on commit

New in MongoDB 2.4.6 RC 0 (Aug 10, 2013)

  • Improvements:
  • Sanity check on "from" side that all cloned and modified documents were sent to TO side on commit
  • Bug fixes:
  • batch limit check for _cloneLocs can fail when docs close to BSONObjMaxUserSize - 1024
  • Failed SSL connection memory leak

New in MongoDB 2.4.5 (Jul 4, 2013)

  • New Features:
  • use journal commit instead of fsync command for config server writes
  • Improvements:
  • Quota exceeded error (12501) should be in mongo log
  • Fix issues found in static analysis
  • add numeric code to getLastError error when primary steps down
  • Fixed:
  • No check for building identical background indexes concurrently
  • Strings with NUL bytes don't round-trip correctly from BSON JavaScript
  • Windows feature detection macros assume Vista aware SDK headers.
  • migrations should use better slave count to determine up-to-date
  • sharedclient tests failing to find libmongoclient.so
  • Call to Mongo() crashes v8
  • Solaris/SmartOS client program "authTest" fails with "relocation error: R_AMD64_PC32"
  • constructors.js failing in debug mode
  • lastHeartbeatRecv flaps between invalid and valid dates
  • Non-text fields in compound text index spec are re-ordered by reIndex or initial sync
  • Balancer round aborted with idle sharded collection
  • mongos with --upgrade and missing --auth flag prints "config servers not in sync" message
  • make dbhash take a list of collections to hash and mongos check should use it
  • Ghostsyncing does not retry after a network failure
  • chaining.js timing out on Windows 64-bit
  • map reduce doesn't seem to yield unless it finds matches
  • Add safety checks to V8 C++ bindings
  • scons --sharedclient mongoclient builds libmongoclient.a, no shared library build.
  • stepdown3.js failing on SSL special builder
  • Authenticating as internal user shouldn't require a database lock
  • smokeClient re-runs some tests with the same test name, breaking buildlogger
  • HexData(0, "000000000000000000000005") will throw
  • Assertion on unordered_fast_key_table_internal.h
  • Enterprise package should not require libgsasl

New in MongoDB 2.4.5 RC0 (Jun 26, 2013)

  • Bug fixes:
  • Assertion on unordered_fast_key_table_internal.h
  • scons --sharedclient mongoclient builds libmongoclient.a, no shared library build.
  • Add safety checks to V8 C++ bindings

New in MongoDB 2.4.4 (Jun 5, 2013)

  • Bug fixes:
  • db.createCollection creates undefined fields which cause mongorestore to fail
  • mongorestore should ignore undefined options
  • WriteConcern with tags>2 say the write timedout, when it didn't

New in MongoDB 2.5.0 Dev (May 23, 2013)

  • Bug fixes:
  • Couldn't kill $where op in features3.js on RHEL 32
  • sharding_multiple_ns_rs.js use wait logic instead of sleep to make sure new primary is online
  • return_partial_shards_down.js turn off balancer before manual chunk moves

New in MongoDB 2.4.3 (Apr 24, 2013)

  • Bug fixes:
  • Shell ignores modified object's "_id" field
  • Phrase search won't match phrases that aren't space-delimited
  • Improvement:
  • Race condition in log rotation (was: SIGUSR1 should set a flag rather than doing rotation)

New in MongoDB 2.4.3 RC 0 (Apr 20, 2013)

  • Fixed:
  • 'Cloning' a document in JavaScript can create an empty _bson field
  • Shell ignores modified "_id" field
  • Improved:
  • Invalid index on config.lockpings on the 2.4.1 config server

New in MongoDB 2.4.2 (Apr 18, 2013)

  • Fixed:
  • Mongod and mongos crash induced by many concurrent invocations of the getnonce command.
  • Field names can be repeated in JavaScript when the same value is set multiple times
  • db.replSetInfo() issue with converting OpTimes to seconds

New in MongoDB 2.4.2 RC 0 (Apr 12, 2013)

  • Fixed issues:
  • replsetprio1.js failing consistently on Solaris in v2.4 branch
  • "Extra" fields added to lazy BSON V8 objects not order preserving
  • sharding_migrateBigObject.js longer timeout for slow machines

New in MongoDB 2.4.1 (Mar 23, 2013)

  • Fixed:
  • Index changes lost during initial sync period

New in MongoDB 2.4.0 (Mar 19, 2013)

  • CHANGES:
  • Major Features:
  • Text Search
  • New Geospatial Indexes with GeoJSON and Improved Spherical Geometry
  • New Hashed Index and Sharding with a Hashed Shard Key
  • Hashed Index
  • Hashed Sharding
  • Security Improvements:
  • New Modular Authentication System with Support for Kerberos
  • Role Based Access Control and New Privilege Documents
  • Administration Changes:
  • --setParameter Option Available on the mongos and mongod Command Line
  • Changes to serverStatus Output Including Additional Metrics
  • Increased Chunk Migration Write Concern
  • BSON Document Validation Enabled by Default for mongod and mongorestore
  • Indexing Changes:
  • Support for Multiple Concurrent Index Builds
  • db.killOp() Can Now Kill Foreground Index Builds
  • Improved Validation of Index Types
  • Interface Changes:
  • $setOnInsert – New Update Operator
  • Limit Number of Elements in an Array
  • JavaScript Engine Changed to V8
  • Additional Limitations for Map-Reduce and $where Operations
  • Improvements to the Aggregation Framework:
  • $match queries now support the $geoWithin operator for bounded geospatial queries.
  • The new $geoNear pipeline stage to support geospatial queries.
  • $min operator only considers non-null and existing field values. If all the values for a field are null or are missing, the operator returns null for the minimum value.
  • For sort operations where the $sort stage immediately precedes a $limit in the pipeline, the MongoDB can perform a more efficient sort that does not require keeping the entire result set in memory.
  • The new $millisecond operator returns the millisecond portion of a date.
  • The new $concat operator concatenates array of strings.
  • NEW:
  • Developer Productivity:
  • Aggregation Framework refinements include an overhaul of the underlying engine introduced in MongoDB 2.2 making it easier to leverage real-time, in-place analytics. MongoDB 2.4 includes significant performance improvements, additional support for binary data, support for $geoWithin and $near geospatial queries, improved string concatenation with the new $concat operator, and improved date calculation semantics.
  • Geospatial enhancements support new use cases with support for polygon intersection queries (with $geoIntersects), support for GeoJSON, and an improved spherical model. Learn more about geospatial improvements in 2.
  • Text Search provides a simplified, integrated approach to incorporating search functionality into apps with support for language specific stemming and stop words in 15 languages and real time indexes. Text search is beta for 2.4 and is not recommended for production use. Learn more about text search.
  • New update semantics for arrays with the $push update operator. Applications can now use $slice to maintain fixed size arrays, and use $sort to maintain sorted arrays. Learn more about capped arrays.
  • New $setOnInsert update operator supports specifying fields to add only on insert and upsert operations.
  • Ease of Operations:
  • Hashed indexes and shard keys provide simple, even distribution for reads and writes. Learn more about hashed indexes and shard keys.
  • New serverStatus metrics including a working set analysis tool makes capacity planning easier for operations teams. Learn more about the new serverStatus metrics including the working set analyzer.
  • More control for operators with the ability to terminate indexing operations with automatic resource cleanup.
  • Improved Performance:
  • V8 JavaScript engine offers better performance and concurrency with JavaScript based actions including those using the $where query operator as well as mapReduce and eval. Learn more about MongoDB on V8, and JavaScript Changes in MongoDB 2.4.
  • Improvements to count provide dramatically faster count operations. Counting is now up to 20 times faster for low cardinality index based counts.
  • Significant optimizations to $elemMatch when using a multi-key index.
  • More Robust Security:
  • Role-Based privileges allow organizations to assign more granular security policies for server, database and cluster administration. Learn more about role based access control in MongoDB.
  • Kerberos authentication mechanism in MongoDB Enterprise.

New in MongoDB 2.4.0 RC 3 (Mar 14, 2013)

  • Bug:
  • [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-8914] - Rename (serverStatus.metrics) "document.scanned" -> "queryExecutor.scanned"
  • [SERVER-8921] - improve error message on invalid text index spec
  • Task:
  • [SERVER-8920] - Add new fields to dbStats command for pdfile version

New in MongoDB 2.4.0 RC 2 (Mar 7, 2013)

  • Bug:
  • [SERVER-5379] - js increment operators (ob.prop += ob2.prop) do not work, after assigment like this ob = ob2
  • [SERVER-5826] - Creating an index using a non-existing plugin should be an error not a warning
  • [SERVER-7718] - Timestamp constructor in shell should take seconds instead of milliseconds
  • [SERVER-8170] - v8 leaks several external objects
  • [SERVER-8331] - jstests/profile4.js fails on fast machine in Windows 64-bit
  • [SERVER-8334] - German stop word list contains non-stopwords
  • [SERVER-8431] - Large update to text index can cause group commit to exceed max size
  • [SERVER-8493] - jsonString Sign Extends Bindata Type
  • [SERVER-8574] - acquiring distributed lock for upgrade process for 2.2->2.4 has very long timeout.
  • [SERVER-8594] - Killing parallel M/R jobs causes temporary collection corruption
  • [SERVER-8601] - Weird logging behavior when re-attempting 2.2 -> 2.4 upgrade on mongos after first attempt fails
  • [SERVER-8632] - System.js functions are not available to map/reduce jobs
  • [SERVER-8648] - checkStatus in DBClientReplicaSet has no explicit socket timeout
  • [SERVER-8661] - broken doc links in server codebase
  • [SERVER-8665] - PowerOf2 sizes can allow a document to grow in size inside a Capped Collection
  • [SERVER-8668] - jstests/sharding/mrShardedOutput.js needs an index
  • [SERVER-8680] - $setOnInsert should not create an empty parent object when it should be a no op
  • [SERVER-8685] - mongorestore oplogReplay + oplogLimit should not be compatible with any other collections
  • [SERVER-8693] - SpiderMonkey shell fails to start -- ReferenceError: JSON is not defined shell/utils.js:574
  • [SERVER-8696] - no_balance_collection.js failing on RHEL64
  • [SERVER-8709] - mongo shouldn't be able to connect with revoked cert
  • [SERVER-8710] - consider additional paranoia for config upgrade
  • [SERVER-8711] - check result of dynamic_cast not NULL in config_upgrade.cpp
  • [SERVER-8719] - sock_test makes invalid assumption that network writes are coalesced
  • [SERVER-8734] - Add non ssl arbiter to ssl RS crashes primary
  • [SERVER-8751] - Downgrading 2.4=>2.2 without dropping 2dsphere/text indexes can lead to data corruption
  • [SERVER-8758] - IndexSet fixes
  • [SERVER-8760] - DBClientReplicaSet::slaveConn returns connection to primary
  • [SERVER-8761] - auto2.js failing on Windows with auth
  • [SERVER-8763] - Add decrement to Counter64
  • [SERVER-8765] - memory leak in config upgrade codepath
  • [SERVER-8769] - ServerStatus().opcounters.inserts not incremented on mongos
  • [SERVER-8771] - Mongostat 2.2 can't --discover shards in a 2.4 cluster
  • [SERVER-8772] - Documents with null value for hashed shard key are not returned via mongos
  • [SERVER-8780] - ConfigUpgradeTests failing across multiple platforms
  • [SERVER-8781] - sharding_migrateBigObject.js failing on RHEL
  • [SERVER-8782] - Solaris segfault in geo_update_btree.js during small_oplog test suite
  • [SERVER-8786] - Race condition when setting ShardingConnectionHook on mongod connection pools
  • [SERVER-8787] - mongos crashing when running splits + inserts on collection with hashed shard key
  • [SERVER-8794] - Couldn't kill the $where operations in features3.js
  • [SERVER-8802] - readWrite users can delete privilege documents via ensureIndex
  • [SERVER-8805] - aggregation $within command: exception thrown
  • [SERVER-8814] - Inserts into any namespace ending in ".system.indexes" are treated like inserts into "system.indexes" and actually build indexes.
  • [SERVER-8815] - tautological compare in ping time sanity check
  • [SERVER-8823] - print and printjson should be allowed from $where and MapReduce
  • [SERVER-8827] - JSTests::TypeConservation unit test segfaults on Spidermonkey
  • [SERVER-8828] - JSTests::Fundamental unit test fails on Spidermonkey
  • [SERVER-8832] - Prototype extensions get saved along with primitive data
  • [SERVER-8849] - read_pref.js failure in RHEL-64bit [2]
  • Improvement:
  • [SERVER-8488] - Reintroduce Limited Windows XP Support
  • [SERVER-8530] - Don't log twice for unauthorized operation
  • [SERVER-8624] - Remove read-only constraint on Reduce function values
  • Task:
  • [SERVER-8393] - Review French stop word list
  • [SERVER-8394] - Review English stop word list
  • [SERVER-8395] - Review Italian stop word list
  • [SERVER-8397] - Review Danish stop word list
  • [SERVER-8398] - Review Russian stop word list
  • [SERVER-8399] - Review Spanish stop word list
  • [SERVER-8400] - Review Swedish stop word list
  • [SERVER-8401] - Review Turkish stop word list
  • [SERVER-8402] - Review Romanian stop word list
  • [SERVER-8403] - Review Hungarian stop word list
  • [SERVER-8520] - Startup warnings should be suppressed for non-interactive shell sessions
  • [SERVER-8674] - Update references in codebase to mongodb wiki

New in MongoDB 2.4.0 RC 1 (Feb 26, 2013)

  • Fixes:
  • Map-reduce memory leak
  • sharding/gridfs.js test fails when calling tojson
  • collection_manager_test debug build assert failure

New in MongoDB 2.4.0 RC 0 (Feb 26, 2013)

  • Fixes:
  • Merge serverAdmin role into clusterAdmin
  • max_message_size.js failing on 32-bit windows
  • max_message_size.js fails in auth passthrough suite

New in MongoDB 2.4.0 RC0 (Feb 2, 2013)

  • Fixes:
  • Merge serverAdmin role into clusterAdmin
  • max_message_size.js failing on 32-bit windows
  • max_message_size.js fails in auth passthrough suite

New in MongoDB 2.2.3 (Feb 2, 2013)

  • Fixes:
  • Startup race with --fork
  • backport sorted chunk cursor to 2.2
  • slowness in mongos when dealing with replset due to getServerAddress() calls

New in MongoDB 2.2.3 RC 1 (Jan 26, 2013)

  • Bug fix:
  • Startup race with --fork
  • backport sorted chunk cursor to 2.2
  • slowness in mongos when dealing with replset due to getServerAddress() calls

New in MongoDB 2.2.3 RC 0 (Jan 26, 2013)

  • Bug fix:
  • Seg fault when shutting down replica set member - Subscription Build with SSL Enabled
  • Initial sync criteria needs to check minValid, not the oplog
  • Improvement:
  • New replication dep. on minvalid collection causes bad behavior

New in MongoDB 2.3.2 Dev (Jan 26, 2013)

  • Bug fix:
  • Seg fault when shutting down replica set member - Subscription Build with SSL Enabled
  • Initial sync criteria needs to check minValid, not the oplog
  • Improvement:
  • Aggregation $min uses Value ordering to compare null and undefined values, does not exclude null and undefined values from consideration

New in MongoDB 2.2.2 (Jan 26, 2013)

  • Major Features:
  • Aggregation Framework
  • TTL Collections
  • Concurrency Improvements
  • Improved Data Center Awareness with Tag Aware Sharding
  • Fully Supported Read Preference Semantics
  • Compatibility Changes:
  • Authentication Changes
  • mongodump Output can only Restore to 2.2 MongoDB Instances
  • ObjectId().toString() Returns String Literal ObjectId("...")
  • ObjectId().valueOf() Returns hexadecimal string
  • Behavioral Changes:
  • Restrictions on Collection Names
  • Restrictions on Database Names for Windows
  • _id Fields and Indexes on Capped Collections
  • New $elemMatch Projection Operator
  • Windows Specific Changes:
  • Windows XP is Not Supported
  • Service Support for mongos.exe
  • Log Rotate Command Support
  • New Build Using SlimReadWrite Locks for Windows Concurrency
  • Tool Improvements:
  • Index Definitions Handled by mongodump and mongorestore
  • mongooplog for Replaying Oplogs
  • Authentication Support for mongotop and mongostat
  • Write Concern Support for mongoimport and mongorestore
  • mongodump Support for Reading from Secondaries
  • mongoimport Support for full 16MB Documents
  • Timestamp() Extended JSON format
  • Shell Improvements:
  • Improved Shell User Interface
  • Helper to load Server-Side Functions
  • Support for Bulk Inserts
  • Operations:
  • Support for Logging to Syslog
  • touch Command
  • indexCounters No Longer Report Sampled Data
  • Padding Specifiable on compact Command
  • Added Build Flag to Use System Libraries
  • Memory Allocator Changed to TCMalloc
  • Replication:
  • Improved Logging for Replica Set Lag
  • Replica Set Members can Sync from Specific Members
  • Replica Set Members will not Sync from Members Without Indexes Unless buildIndexes: false
  • New Option To Configure Index Pre-Fetching during Replication
  • Map Reduce Improvements:
  • Improved support for sharded MapReduce, and
  • MapReduce will retry jobs following a config error
  • Sharding Improvements:
  • Index on Shard Keys Can Now Be a Compound Index
  • Migration Thresholds Modified
  • Licensing Changes:
  • Added License notice for Google Perftools (TCMalloc Utility).

New in MongoDB 2.2.1 (Jan 26, 2013)

  • Major Features:
  • Aggregation Framework
  • TTL Collections
  • Concurrency Improvements
  • Improved Data Center Awareness with Tag Aware Sharding
  • Fully Supported Read Preference Semantics
  • Compatibility Changes:
  • Authentication Changes
  • findAndModify Returns Null Value for Upserts
  • mongodump Output can only Restore to 2.2 MongoDB Instances
  • ObjectId().toString() Returns String Literal ObjectId("...")
  • ObjectId().valueOf() Returns hexadecimal string
  • Behavioral Changes:
  • Restrictions on Collection Names
  • Restrictions on Database Names for Windows
  • _id Fields and Indexes on Capped Collections
  • New $elemMatch Projection Operator
  • Windows Specific Changes:
  • Windows XP is Not Supported
  • Service Support for mongos.exe
  • Log Rotate Command Support
  • New Build Using SlimReadWrite Locks for Windows Concurrency
  • Tool Improvements:
  • Index Definitions Handled by mongodump and mongorestore
  • mongooplog for Replaying Oplogs
  • Authentication Support for mongotop and mongostat
  • Write Concern Support for mongoimport and mongorestore
  • mongodump Support for Reading from Secondaries
  • mongoimport Support for full 16MB Documents
  • Timestamp() Extended JSON format
  • Shell Improvements:
  • Improved Shell User Interface
  • Helper to load Server-Side Functions
  • Support for Bulk Inserts
  • Operations:
  • Support for Logging to Syslog
  • touch Command
  • indexCounters No Longer Report Sampled Data
  • Padding Specifiable on compact Command
  • Added Build Flag to Use System Libraries
  • Memory Allocator Changed to TCMalloc
  • Replication:
  • Improved Logging for Replica Set Lag
  • Replica Set Members can Sync from Specific Members
  • Replica Set Members will not Sync from Members Without Indexes Unless buildIndexes: false
  • New Option To Configure Index Pre-Fetching during Replication
  • Map Reduce Improvements:
  • Improved support for sharded MapReduce
  • MapReduce will retry jobs following a config error.
  • Sharding Improvements:
  • Index on Shard Keys Can Now Be a Compound Index
  • Migration Thresholds Modified
  • Licensing Changes:
  • Added License notice for Google Perftools (TCMalloc Utility).

New in MongoDB 2.2.1 RC0 (Sep 24, 2012)

  • mongos can use invalid ptr to master conn when setShardVersion fails
  • queueing writebacks register with lastError too early
  • UTC findAndModify positional operator regression with undotted query fields

New in MongoDB 2.2.0 RC 2 (Aug 24, 2012)

  • Bug:
  • [SERVER-6757] - map reduce double free when dropping source collection during yield
  • [SERVER-6759] - Nightly Subscription build failing on SUSE
  • [SERVER-6766] - DocumentSourceGroup does not properly serialize constant expressions, can cause a valid expression on mongos to be unparsable on shards.
  • [SERVER-6778] - printStackTrace does not work when running as a Windows Service
  • [SERVER-6779] - $coerceToBool cannot be serialized, causes verify assertion when some optimized expressions are sent to shards
  • [SERVER-6785] - Possible mongos memory leak
  • [SERVER-6793] - 2.2.0-rc1 stops responding to other requests with high-fault reads?
  • [SERVER-6795] - ExpressionCompare incorrectly optimizes reverse sense expressions to a comparison with the wrong inclusivity
  • [SERVER-6809] - splitVector doesn't filter additional index fields when shard key is prefix of index
  • [SERVER-6811] - prefix shard keys index bounds handling
  • [SERVER-6814] - memory leak on page fault exception in BtreeCursorImpl::init()
  • [SERVER-6825] - Hard shutdown can leave replication in unrestartable state

New in MongoDB 2.2.0 RC 1 (Aug 14, 2012)

  • Fixed:
  • Bug SERVER-6572 Performance issue
  • Bug SERVER-6509 ignore SIGPIPE
  • Bug SERVER-6512 ReplicaSetMonitor::_checkConnection does not check upper bounds for the indexes

New in MongoDB 2.1.2 Dev (Jun 27, 2012)

  • Bugs:
  • SERVER-5258 RS manager can demote current primary without any log messages or closing connections
  • SERVER-5852 freebsd 64-bit backtrace segfaults
  • Improvements:
  • SERVER-5648 Yesterday 06:09 PM UTC Improved support for native AtomicUInt64

New in MongoDB 2.0.6 (Jun 27, 2012)

  • Bug:
  • [SERVER-2917] - Rest / HTTP interface not working with AUTH and command
  • [SERVER-4603] - when migrating the last chunk off of a shard for a collection, version set to 0 and does *not* block version reset
  • [SERVER-4609] - StringBuilder signed integer max buffer size spec is too low, can cause allocated memory buffer overflow upon call to BSONObj::toString()
  • [SERVER-4750] - Secondary syncs to another secondary that has slaveDelay > 0
  • [SERVER-4758] - OplogReader has no socket timeout
  • [SERVER-5040] - Cloner can fail to create unique indexes on initial sync
  • [SERVER-5353] - _id query on capped collection warning can be printed incorrectly
  • [SERVER-5405] - mongos does not send reads to secondaries after replica restart when using keyFiles
  • [SERVER-5581] - assertion when clearing the query pattern for an unsatisfiable query (2.0 only, already fixed in 2.1)
  • [SERVER-5746] - Wrong initialization for ReplicaSetMonitor Nodes
  • [SERVER-5791] - SConstruct failing to find os.environ['HOME']
  • Improvement:
  • [SERVER-3791] - compact always creates a new extent
  • [SERVER-5303] - yield when fetching a document for migrate
  • [SERVER-5706] - If only slaveDelay'd nodes are available, use them
  • cl pt 2.1.2 dev:
  • Bug:
  • [SERVER-1470] - Update w/upsert ignores dbref field from query on insert
  • [SERVER-1877] - Using single hyphen for install parameter will install un-startable Windows service
  • [SERVER-2291] - count command returns zero in some error cases rather than reporting an error with ok:false
  • [SERVER-2639] - Inserting into a capped collection an object larger than max size fails silently
  • [SERVER-2659] - query_yield2 failure
  • [SERVER-2942] - MapViewOfFileEx failed during large import
  • [SERVER-3100] - MongoDB often does not shut down cleanly when using init script
  • [SERVER-3620] - test (dbtests) fails with pthread assertion
  • [SERVER-3639] - --repair fails if mongodb.lock file exists (and has data) if journaling on (but there are no journal files)
  • [SERVER-3877] - Solaris 1.8.2 mongo Doesn't Parse Username and Password Options Correctly
  • [SERVER-3918] - make sparse indexes error out on {$exists: false} queries
  • [SERVER-4027] - Accept geo points equal to 180 (or specified max)
  • [SERVER-4138] - Mongo crashes in windows if database name is a reserved file name
  • [SERVER-4142] - mongod.exe on Windows -- Source files in SCons build but not in Visual Studio project
  • [SERVER-4262] - when dropping collections need to invalidate all conn sharding state
  • [SERVER-4372] - Creating a DB with a name containing a colon creates two DBs
  • [SERVER-4439] - Replica set members shouldn't sync from a node that is very behind
  • [SERVER-4476] - mongod's cached data should be refreshed on removeShard
  • [SERVER-4505] - Don't assume old primary is still primary when no nodes are returning isMaster
  • [SERVER-4581] - Mongos and mongod keep trying to reconnect to removed shard
  • [SERVER-4726] - Spurious warning: ClientCursor::yield can't unlock b/c of recursive lock during --repair
  • [SERVER-4732] - potential segfault on full config reload during wbl if collection is dropped / unsharded but still receives writebacks
  • [SERVER-4758] - OplogReader has no socket timeout
  • [SERVER-4800] - mongos cursor handling with timeouts
  • [SERVER-4811] - OID increments can overflow for a given time period
  • [SERVER-4972] - mongorestore on server with --auth allows restore without credentials of colls with no index
  • [SERVER-5000] - Connection count is not in sync with the connection thread name
  • [SERVER-5040] - Cloner can fail to create unique indexes on initial sync
  • [SERVER-5056] - Server cannot automatically recover if it terminates during recovery
  • [SERVER-5101] - Test failure in closeall.js
  • [SERVER-5124] - authentication seems to intermittently fail after adding/removing a shard
  • [SERVER-5198] - incorrect assumptions in write operations using cursors
  • [SERVER-5200] - slowNightly tests failing on sharding_balance4.js
  • [SERVER-5230] - HostAndPort::me() should use bind_ip
  • [SERVER-5233] - Mongodump stdout not working with authentication
  • [SERVER-5240] - mongos fails to connect to active cluster with config hosts down
  • [SERVER-5243] - mongos will route getLastError command to the config server when last insert triggered a split
  • [SERVER-5258] - RS manager can demote current primary without any log messages or closing connections
  • [SERVER-5283] - other threads can see partially sharded chunkmanager
  • [SERVER-5304] - initial sync fails to create index on capped collection
  • [SERVER-5393] - Killing mongod during a repair can leave it unable to start up
  • [SERVER-5428] - count8.js failing on Nightly RHEL build
  • [SERVER-5441] - Mongo shell "getlasterror" does not return "updatedExisting" via mongos
  • [SERVER-5473] - mongostat throws an error when connecting via a 1.8.x mongos - "unrecognized command: getnonce"
  • [SERVER-5485] - implement thread safety for shell utils, using fine grained locking
  • [SERVER-5494] - Changes to benchrun causing failure in bench_test1.js
  • [SERVER-5511] - Junk strings in listCommand help text?
  • [SERVER-5536] - 2.0/2.1 sharded mapReduce compatibility
  • [SERVER-5538] - legacy (2.0) staleconfigexceptions can be thrown w/o namespace, 2.1 needs to handle
  • [SERVER-5545] - DurableImpl::commitIfNeeded and dur.cpp's _groupCommit are not sufficiently aggressive
  • [SERVER-5552] - adding an index while an update operation yields can result in incorrect index key entries
  • [SERVER-5556] - Error 8070 should be an massert not a uassert
  • [SERVER-5570] - Killing of 'count' query cause incorrect behavior
  • [SERVER-5597] - Windows implementation of toWideString in text.cpp is incorrect.
  • [SERVER-5616] - Any shell command containing the string ".auth" is not added to shell history
  • [SERVER-5624] - mongos does not respect notimeout for cursors
  • [SERVER-5627] - mongodb hangs when doing mapreduce
  • [SERVER-5643] - keyfile documentation is incorrect in mongod help
  • [SERVER-5649] - Initial sync of capped collection does not create _id index
  • [SERVER-5670] - externally preallocated data files may be ignored when allocating extents
  • [SERVER-5693] - invalid system_js function will cause mongodb server crash.
  • [SERVER-5698] - "assert failed : reconfig worked" in fastsync.js
  • [SERVER-5720] - GridFS::setChunkSize rejects all sizes but 0
  • [SERVER-5740] - index bounds may be incorrectly determined for $not:$elemMatch queries
  • [SERVER-5741] - nested $elemMatch queries are not handled in queryutil, trigger "warning: shouldn't get here?" log message
  • [SERVER-5742] - bigMapReduce.js failing b/c of migrate deletion during m/r
  • [SERVER-5746] - Wrong initialization for ReplicaSetMonitor Nodes
  • [SERVER-5748] - mongo/platform folder missing after c++ client driver installation
  • [SERVER-5750] - assert in server5012.js
  • [SERVER-5764] - Multi-line mode in the shell went away
  • [SERVER-5772] - assert in query_yield2.js
  • [SERVER-5785] - balancer isOverlapping() check is failing
  • [SERVER-5791] - SConstruct failing to find os.environ['HOME']
  • [SERVER-5796] - HexData undocumented, crashy
  • [SERVER-5797] - Uncaught exception in count_slaveok.js
  • [SERVER-5805] - Fatal Assertion 16213 in fsync.js
  • [SERVER-5817] - scons error in 32-bit RHEL build
  • [SERVER-5819] - Use FileAllocator on Windows
  • [SERVER-5825] - "No module named hashlib" in utils.py
  • [SERVER-5842] - Exceptions thrown in scripting/engine_spidermonkey.cpp need to be handled there
  • [SERVER-5844] - mongos cursors return the wrong value for startingFrom
  • [SERVER-5852] - freebsd 64-bit backtrace segfaults
  • [SERVER-5856] - make query optimizer code not access data in constructor
  • [SERVER-5867] - Cannot use SRWLocks on Windows Server 2003
  • [SERVER-5872] - autosplit would be triggered before data size touch chunksize. The return message "updatedExisting" of update is missed
  • [SERVER-5876] - user authentication should retry on primary
  • [SERVER-5883] - duplicate key error in replset7.js
  • [SERVER-5885] - center query update asserting in geo_full.js
  • [SERVER-5886] - initial_sync3.js bb failure with "not master"
  • [SERVER-5891] - TTLMonitor complains with --auth
  • [SERVER-5895] - auth.js times out waiting for user authentication to replicate
  • [SERVER-5898] - uncaught exception in mr_shard_version.js
  • [SERVER-5918] - invalid memory writes in sharding test suite
  • [SERVER-5920] - bad reload of database config
  • [SERVER-5924] - Implicit yield reporting in MultiCursor::recoverFromYield() can overstate the yield count if the cursor's current() document is deleted during a yield.
  • [SERVER-5926] - Segfault when procesing a command with empty namespace
  • [SERVER-5935] - count8.js sharding_passthrough tests
  • [SERVER-5936] - assertion (fassert) may be triggered by exact match geo lookup with $or
  • [SERVER-5940] - error in remove1.js
  • [SERVER-5941] - Failure in count6.js during sharding_passthrough
  • [SERVER-5942] - benchRun unable to find all config servers during mr_during_migrate.js
  • [SERVER-5948] - replSet member can fall out of RECOVERING back into SECONDARY even if no other node in the set can be authenticated against.
  • [SERVER-5950] - assert in repl13.js
  • [SERVER-5959] - Mongod crashes with access denied if you spawn multiple shells inserting in quick succession
  • [SERVER-5962] - "TypeError: result.remaining has no properties" in auth_add_shard.js
  • [SERVER-5963] - exception cloning object in replset7.js
  • [SERVER-5968] - geo_update_btree.js never completes, in debug mode only
  • [SERVER-5970] - QueryOptimizerCursorTests core test failure in Linux debug mode
  • [SERVER-5971] - replication timeout in replsets_priority1.js
  • [SERVER-5973] - Aggregation $sort should correctly handle dates before 1970
  • [SERVER-5986] - fsync deadlock issues
  • [SERVER-5993] - fsync_lock_read_secondaries.js fails on sharding_passthrough
  • [SERVER-5995] - capped collection has different hash on master/slave at end of where4.js
  • [SERVER-5996] - "uncaught exception: map reduce failed" in zbigMapReduce.js
  • [SERVER-5999] - page fault exception in ClientCursor::aboutToDelete() can leave another Cursor / ClientCursor in an inconsistent state
  • [SERVER-6001] - key matching is not handled properly for the $elemMatch operator
  • [SERVER-6003] - Query optimizer failure in core tests on linux 32-bit debug
  • [SERVER-6006] - moveChunk fails with migration already in progress
  • [SERVER-6020] - Exception in MongoMutexTest on Windows 32-bit
  • [SERVER-6021] - Need to make more constructors not access data
  • [SERVER-6022] - test failure in cursora.js
  • [SERVER-6031] - read only user can get write priority
  • [SERVER-6034] - OS X failing to build with "invalid character '%' in mnemonic" on atomic_word_test
  • [SERVER-6044] - "not enough storage is available" for MapViewOfFileEx
  • [SERVER-6045] - aggregate cmd crashes server with empty pipeline argument
  • [SERVER-6053] - query safety with PageFaultException
  • [SERVER-6061] - Null pointer dereference segfault in mongo shell
  • [SERVER-6073] - WIndows service installation hits assertion failure in src\mongo\db\client.h(262)
  • [SERVER-6077] - Build times out compiling queryoptimizertests.cpp on OS X 32-bit
  • [SERVER-6082] - "process cannot access the file" in remove2.js
  • [SERVER-6089] - balancer error in mrShardedOutput.js
  • [SERVER-6090] - uncaught exception in auth_add_shard.js
  • [SERVER-6091] - Uncaught exception in sync_passive2.js
  • [SERVER-6092] - chunks not balanced at end of no_balance_collection.js
  • [SERVER-6094] - sharding/remove2.js has cleanup issues at end of test, fails on Linux but blows up test on Windows
  • [SERVER-6103] - test failure in counttests.cpp
  • [SERVER-6114] - Windows compile failing with unresolved external symbols
  • [SERVER-6116] - buildbot zbigMapReduce.js counts failing in mapreduce
  • [SERVER-6130] - Replication timeout in moveprimary-replset.js
  • [SERVER-6132] - a failure inside MakeChunkWritable should call abort/fassert instead of assert
  • [SERVER-6133] - flushing connection pool can leak connections
  • [SERVER-6154] - failure in authCommands2
  • [SERVER-6155] - stale config server in sort1.js
  • [SERVER-6160] - TypeError in replsets/auth1.js
  • [SERVER-6164] - connection logging sometimes has no numbers
  • Improvement:
  • [SERVER-1506] - when sharding on a and need an index on a,b allow only a,b index
  • [SERVER-2023] - touch command to pre-heat a collection
  • [SERVER-2187] - Mongorestore should warn more
  • [SERVER-2545] - multi data center support via location aware sharding
  • [SERVER-2939] - Support Unicode fully in the Mongo shell (was "Linenoise UTF8 support")
  • [SERVER-3062] - Read from the nearest slave
  • [SERVER-3102] - invalidate querypattern when index becomes multikey
  • [SERVER-3356] - disk/yield lock - initial query
  • [SERVER-3636] - not in mem yielding for single doc delete
  • [SERVER-3735] - Reload settings every pass through the balancer loop
  • [SERVER-3746] - Support sharding GridFS on {files_id:1, n:1}
  • [SERVER-4156] - fix read only user support with sharding
  • [SERVER-4180] - Allow multiple constraints within a $elemMatch clause to be used with a multikey index
  • [SERVER-4392] - split network thread out from worker thread for secondaries
  • [SERVER-4407] - Log warnings on startup if (hard) rlimits are no good
  • [SERVER-4988] - printStackTrace on Windows
  • [SERVER-4992] - Disable dropDatabase command on "config" if sharded collections exist with data
  • [SERVER-5046] - per collection option to pad to power of 2
  • [SERVER-5083] - Include database name in auth log message
  • [SERVER-5246] - Move linenoise out of third_party
  • [SERVER-5459] - Add rs.syncFrom() helper
  • [SERVER-5468] - sslPEMKeyPassword Should not be visible in logs and similar
  • [SERVER-5475] - use chunk diffs instead of full chunk data reload in mongod and mongos
  • [SERVER-5492] - Complete serverStatus in FreeBSD
  • [SERVER-5648] - Improved support for native AtomicUInt64
  • [SERVER-5658] - Add more debugging info to applyOps code path
  • [SERVER-5706] - If only slaveDelay'd nodes are available, use them
  • [SERVER-5784] - Record all btree stats (stop sampling)
  • [SERVER-5790] - sharding_rs2.js failing during slowNightly tests
  • [SERVER-5863] - Have mongod --help show default values
  • [SERVER-5912] - Error message for too-long line in mongoimport is unclear
  • [SERVER-5934] - rewrite chunk delete
  • [SERVER-5977] - switch from list.sort() to sort(vector)
  • [SERVER-6019] - stats for PageFaultException
  • [SERVER-6023] - add an explicit requireOrder argument to NamespaceDetailsTransient::getCursor()
  • [SERVER-6039] - make ShardChunkManager not use data in constructor
  • New Feature:
  • [SERVER-211] - TTL collections
  • [SERVER-828] - Support for positional ($) operator in fields to return specifier
  • [SERVER-2238] - New projection operator $elemMatch
  • [SERVER-4632] - Display "Welcome to MongoDB" message first time a user runs mongo shell
  • [SERVER-5458] - --nohttpinterface option on mongos
  • [SERVER-5685] - Have multiple threads applying oplog ops
  • [SERVER-5777] - Add support for a range constraint on the first sort field to in/sort/limit optimization
  • [SERVER-5782] - need a $literal operator to help prevent injection attacks
  • [SERVER-5861] - Support a richer templating language in benchRun
  • [SERVER-5903] - pass limit to sharded count
  • Task:
  • [SERVER-5902] - check fileMD5 failure for count() problems
  • Sub-task:
  • [SERVER-4628] - good lock state reporting with the more granular locking
  • [SERVER-5794] - mongod should not check minor version on new connections

New in MongoDB 2.0.4 (Mar 20, 2012)

  • Compact Command
  • Concurrency Improvements
  • Default Stack Size
  • Index Performance Enhancements
  • Sharding Authentication
  • Journaling enhancements
  • New ContinueOnError option for bulk insert
  • Command output changes
  • Map Reduce:
  • Output to a sharded collection
  • Performance improvements
  • New Querying Features:
  • Additional regex options: s
  • $and
  • Replica Sets:
  • Priorities
  • Data-center awareness
  • w : "majority"
  • Reconfiguration with a minority up
  • Primary checks for a caught up secondary before stepping down
  • Extended shutdown on the primary to minimize interruption
  • Maintenance Mode
  • Geospatial Features:
  • Multi-location documents
  • Polygon searches
  • Shell features:
  • Custom prompt
  • Default shell init script

New in MongoDB 1.9.1 (Aug 6, 2011)

  • Bug:
  • [SERVER-405] - dates before epoch sorting
  • [SERVER-958] - Range queries on arrays behave differently with indexes
  • [SERVER-960] - Dates before epoch not retrieved correctly
  • [SERVER-984] - Invalid sorting of infinity and -infinity
  • [SERVER-1648] - When searching with bounding box query, all results are not returned.
  • [SERVER-1735] - Inconsistent behaviour for $exists: false and $type: 10 in query
  • [SERVER-1767] - Chunk balancing does not resume after a temporary network outage of a config server
  • [SERVER-2009] - potentially incorrectly handled test in client cursor may result in improper skipping
  • [SERVER-2165] - $in and $all don't work together
  • [SERVER-2253] - db.dropDatabase is not erasing the database entry from the configdb
  • [SERVER-2302] - if a field has a regular filter and $ors, index breaks in
  • [SERVER-2371] - Duplicate key error on update does not specify index
  • [SERVER-2437] - slavedelay logging too verbose with --quiet
  • [SERVER-2481] - SlaveOK queries shouldn't go to slaves in RECOVERING state
  • [SERVER-2520] - add comments in code about intentional memory leak in ReplSetImpl::initFromConfig()
  • [SERVER-2620] - Multi-key indexes on arrays of object with more than one key cause queries to behave like $elemMatch by default.
  • [SERVER-2626] - Excluding _id field doesn't work with FindAndModify
  • [SERVER-2634] - mongoimport fails to import CSV when field value is a full stop "."
  • [SERVER-2710] - Running replSetReconfig while writing to a collection causes secondaries and arbiters to segfault.
  • [SERVER-2828] - Sharding status not communicated across Routers (mongoS)
  • [SERVER-2865] - $or clause won't handle 'invalid' key range properly
  • [SERVER-2879] - Upgrade 1.6 to 1.8 changes shard member format requirements, cryptic error
  • [SERVER-2881] - Assertion when setting profiling level on a secondary
  • [SERVER-2882] - operations are still written on primary after it steps down
  • [SERVER-2884] - Array ordering semantics are different with index than without an index
  • [SERVER-2904] - bsondump.exe crashes on windows if /? is used as an option
  • [SERVER-2905] - Scan and order sort should treat missing fields like nulls
  • [SERVER-2933] - [ReplSetHealthPollTask] Assertion failure false util/message.cpp 512
  • [SERVER-2935] - shallow woEqual check used for index dup checking
  • [SERVER-2940] - Double precision errors on linux 32 bit builds
  • [SERVER-2952] - convert $or parsing masserts to uasserts where necessary
  • [SERVER-2968] - Exact geo lookups not processed exactly
  • [SERVER-2972] - Increase the Upstart script kill timeout
  • [SERVER-3001] - should strip spaces from use db shell helper
  • [SERVER-3010] - replica set reconfiguration results in NULL _self in ReplSetImpl
  • [SERVER-3024] - distributed lock will not unlock self
  • [SERVER-3029] - Master-Slave replication. Slave stopped replicating data.
  • [SERVER-3031] - Replication fails with "objects in a capped ns cannot grow"
  • [SERVER-3032] - mongod crashed in ReplSetImpl summarizeStatus
  • [SERVER-3035] - allow discovery of more than one rs seed
  • [SERVER-3041] - The 'full' option to validate should imply 'scandata'.
  • [SERVER-3043] - Assertion failure in mongos: Assertion failure _created client/connpool.h 50
  • [SERVER-3049] - com.mongodb.MongoException: setShardVersion failed host[mongodb04.example.com:27018] { errmsg: "not master", ok: 0.0 }
  • [SERVER-3051] - Spherical query assertions should provide useful information in case of long/lat order issues.
  • [SERVER-3052] - multi update log message adds additions nscanned and fastmod
  • [SERVER-3054] - Assertion failure bmin

New in MongoDB 1.8.2 (Aug 6, 2011)

  • Journaling
  • Sparse and Covered Indexes
  • Incremental Map/Reduce Support

New in MongoDB 1.2.1 (Jan 13, 2010)

  • More indexes per collection
  • Faster index creation
  • Map/Reduce
  • Stored JavaScript functions
  • Configurable fsync time
  • Several small features and fixes