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