Release Notes - Core Server - Version 3.4.2 - HTML format

Bug

  • [SERVER-23759] - shutting down a node while replication is initializing can crash
  • [SERVER-24027] - The planner does not consider reversing index scan direction in order to obtain a SORT_MERGE plan
  • [SERVER-24563] - Secondary crash when inserting document into db with different case
  • [SERVER-25068] - Make small_oplog_rs_initsync passthrough test to run initial sync while the primary is operating on its data
  • [SERVER-25286] - Remove drop2.js dependency on count scan yield behavior
  • [SERVER-26525] - Factor out identical jstest checkLog functions and increase timeout
  • [SERVER-26734] - indexStats action is not sufficient privileges for $indexStats operator
  • [SERVER-26773] - two_initsync.js should check that inserts succeed
  • [SERVER-26791] - move/split/mergeChunk commands do a full metadata refresh on the shard
  • [SERVER-26860] - add more unittests for compatible-first locking policy
  • [SERVER-26945] - master-slave ReplSource::resyncDrop should not assume database name obtained from listDatabases result exists locally
  • [SERVER-27046] - race between CollectionCloner::_findCallback and CollectionCloner::_insertDocuments
  • [SERVER-27050] - Ensure upstream node doesn't roll back after checking minvald
  • [SERVER-27056] - Don't enforce data freshness for step-up command
  • [SERVER-27079] - DataReplicator should wait for last oplog fetcher to finish before starting next initial sync attempt
  • [SERVER-27123] - Only update commit point via spanning tree
  • [SERVER-27125] - Arbiters in pv1 should vote no in elections if they can see a healthy primary of equal or greater priority to the candidate
  • [SERVER-27154] - replSetRequestVotes command should wait for durability
  • [SERVER-27155] - replSetRequestVotes records dryRun votes as real
  • [SERVER-27157] - replSetRequestVotes doesn't synchronize between processing and recording request
  • [SERVER-27243] - Upgrade to 3.4 'create collection' fails in Backup
  • [SERVER-27288] - DocumentSourceSkip and DocumentSourceMatch getNext() should release GetNextResult reference prior to subsequent underlying source getNext() call
  • [SERVER-27289] - Shell: mongo --host replSet/Host:Port no longer works
  • [SERVER-27295] - always set slaveOk to true on remote commands in the old initial sync
  • [SERVER-27301] - converted OpObserver into an interface. ServiceContext should always return a valid OpObserver implementation.
  • [SERVER-27323] - Use stopOplogFetcher failpoint instead of rsSyncApplyStop failpoint in write_concern_after_stepdown_and_stepup.js
  • [SERVER-27339] - ReplSetTest shouldn't inspect TestData directly
  • [SERVER-27352] - Fix stepdown command in double_rollback.js
  • [SERVER-27365] - reconfig_without_increased_queues.js should initiate node 2 of its replicaset with priority 0
  • [SERVER-27370] - MongoDB 3.4.0 with --rest segfaults if the route /isMaster is called
  • [SERVER-27393] - Balancer taking 100% CPU due to large number of dropped sharded collections
  • [SERVER-27397] - Disable OplogFetcher sync source re-evaluation during initial sync
  • [SERVER-27409] - zbigMapReduce.js should use a write concern for inserts so it does not roll over its oplog
  • [SERVER-27420] - Aggregation should explicitly parse apart BSON Arrays
  • [SERVER-27428] - MigrationChunkClonerSourceLegacy's unit-tests do not wait for the onCommand handler thread to complete
  • [SERVER-27438] - Legacy query via mongos drops $comment
  • [SERVER-27446] - operation_latency_histogram.js fails in initial sync passthrough due to reads performed by the repl system
  • [SERVER-27449] - set_feature_compatibility_version.js should not give votes to replica set members expected to crash
  • [SERVER-27450] - Add i386 architecture to repo config yaml for debian and ubuntu.
  • [SERVER-27456] - Microbenchmarks: Increase inMemorySizeGB and oplogSize
  • [SERVER-27460] - RouterStageMerge::kill() can crash during mongos shutdown
  • [SERVER-27461] - Retry connecting to shut down primary until failure in shutdown_primary.js
  • [SERVER-27466] - move transitionToPrimaryHangBeforeInitializingConfigDatabase to before taking the global exclusive lock
  • [SERVER-27512] - queryable_mmapv1 can encounter larger blocks than the default page size
  • [SERVER-27523] - geo_s2cursorlimitskip.js fails in initial sync passthrough due to reads performed by the repl system
  • [SERVER-27525] - collation.js should use test-specific database
  • [SERVER-27544] - shutdown_primary.js shouldn't try to disable rsSyncStopApply failpoint on primary
  • [SERVER-27576] - MongoDB 3.4 'mongo' shell quit() not working
  • [SERVER-27582] - lastVote is not properly initialized
  • [SERVER-27583] - SyncSourceFeedback should be shut down outside ReplicationCoordinatorExternalStateImpl lock
  • [SERVER-27591] - Need to abandonSnapshot after unlocking in TTLMonitor
  • [SERVER-27611] - DatabaseCloner::shutdown() does not shut down CollectionCloner
  • [SERVER-27624] - SyncSourceFeedback should check for shutdown before setting _reporter
  • [SERVER-27649] - Don't error on serialization of $elemMatch with $regex
  • [SERVER-27656] - Ensure node 0 is not primary during reconfig in last_vote.js
  • [SERVER-27657] - last_vote.js should wait for reconfig to reach all nodes before continuing
  • [SERVER-27677] - CollectionBulkLoader::_releaseResources() should ensure there is a Client available
  • [SERVER-27678] - CollectionCloner should call _finishCallback at most once
  • [SERVER-27680] - Make bgsync check stopOplogFetcher failpoint before scheduling new OplogFetcher
  • [SERVER-27712] - Do not specify _id field in user_defined_roles_on_secondaries.js
  • [SERVER-27741] - fix race in DataReplicatorTest::DataReplicatorResetsOnCompletionCallbackFunctionPointerUponCompletion
  • [SERVER-27775] - fix race in collection_cloner_test CollectionClonerTest::CollectionClonerCannotBeRestartedAfterPreviousFailure

New Feature

Task

  • [SERVER-25535] - Remove injectExpressionContext() methods from pipeline directory
  • [SERVER-25860] - Flatten / optimize fixup_info
  • [SERVER-26308] - Decrease number of jobs for sharding-related suites on Windows DEBUG and PPC variants
  • [SERVER-26528] - Add additional logging when sync source is changed or cleared
  • [SERVER-26562] - Move CommitChunkMigration command implementation into a Catalog function and unit test it
  • [SERVER-26785] - rewrite addshard2.js to be able to unblacklist it from the last_stable suite
  • [SERVER-26903] - ShardingTest is failing non-retriable writes when the primary steps down because the stepdown suite turns the electionTimeoutMillis down from 10,000 ms to 5,000 ms
  • [SERVER-26951] - remove or improve replset9.js
  • [SERVER-27118] - Default shutdown command's 'timeoutSecs' argument to 10 seconds
  • [SERVER-27208] - Update microbenchmarks to use next mongo-perf release
  • [SERVER-27216] - Increase catchup timeout to 300 seconds in catchup.js
  • [SERVER-27231] - add failpoint to turn off re-evaluating sync sources, for jstests that manipulate chaining
  • [SERVER-27282] - Clean up and fix bugs in RS rollback error handling
  • [SERVER-27304] - Create setParameter to make all aggregations which require merging select the primary shard as the merger
  • [SERVER-27321] - Rename ScopedChunkManager::getExisting to refreshAndGet
  • [SERVER-27343] - Reduce Frequency of sys-perf runs
  • [SERVER-27350] - Enable access control for microbenchmarks in Evergreen
  • [SERVER-27418] - [trivial] Enable noPassthrough/index_version_v2.js test for MongoRocks
  • [SERVER-27459] - dbtest should set featureCompatibilityVersion to the most recent value during global initialization
  • [SERVER-27465] - rewrite killop.js using setYieldAllLocksHang failpoint
  • [SERVER-27468] - Do not run dynamic initial sync passthroughs on 3dot2 initial sync variant
  • [SERVER-27480] - Get rid of ConfigServer class
  • [SERVER-27526] - Get rid of all non-metadata usages of DBConfig::isShardingEnabled
  • [SERVER-27527] - Remove explicit shardingEnabled check for databases in M/R and aggregation
  • [SERVER-27568] - mongo-perf: Release 2017-01
  • [SERVER-27605] - Reduce concurrency for jsCore_small_oplog_rs_resync_static, jsCore_small_oplog_rs_initsync and jsCore_small_oplog_rs_initsync_static
  • [SERVER-27618] - Make NetworkInterfaceASIO stress test less stressful
  • [SERVER-27667] - Get rid of the sharding Request class
  • [SERVER-27736] - DBConfig should not store unsharded collections
  • [SERVER-27845] - Remove logic in etc/evergreen.yml to create a branch that tracks the remote branch

Improvement

  • [SERVER-24695] - burn_in_tests.py should have a mechanism for blacklisting tests and suites similar to resmoke.py
  • [SERVER-26545] - Remove fixed-size limitation on WiredTiger hazard pointers
  • [SERVER-26806] - Randomly restart initial sync in the dynamic initial sync passthrough
  • [SERVER-26960] - Consider improving error message when attempting $natural sort on a view
  • [SERVER-27042] - Fix and modernize currentop.js
  • [SERVER-27052] - Add asynchronous operation support to DataReplicator
  • [SERVER-27126] - Remove reference to mongodb-mongo-master Evergreen project in burn_in_tests.py script
  • [SERVER-27140] - Linux package smoke testing
  • [SERVER-27146] - Enforce maxStalenessSeconds >= 90
  • [SERVER-27175] - Address slowness in Explain::getPlanSummary
  • [SERVER-27256] - Run getMore test in sharded configuration in views_authz.js
  • [SERVER-27258] - A v3.4 config server can crash with a core dump if it gets an unsupported shard key from mongo S.
  • [SERVER-27306] - Remove AutoGetCollection* methods that take std::string namespace
  • [SERVER-27307] - DocumentSourceCursor should store namespace as NamespaceString
  • [SERVER-27364] - Remove DBConfig::setPrimary
  • [SERVER-27366] - Remove DBConfig::enableSharding
  • [SERVER-27381] - Remove DBConfig::dropDatabase
  • [SERVER-27406] - Reduce DocumentSourceCursor batch size from 16MB to 4MB
  • [SERVER-27419] - Move cluster 'drop' command to a separate file
  • [SERVER-27441] - Improvements to Linux package smoke testing
  • [SERVER-27473] - Remove writes from DBConfig
  • [SERVER-27510] - Compare only epochs instead of full chunk versions in CollectionMetadata::checkChunkIsValid()
  • [SERVER-27556] - Cleanup sharding request processing code
  • [SERVER-27613] - Remove unused 'chunkVersion' field sent in splitChunk command
  • [SERVER-27653] - Blacklist Concurrency suite in burn_in_tests
  • [SERVER-27726] - Split ShardingCatalogManagerImpl into multiple .cpp files by category of operation
  • [SERVER-27754] - Use requests instead of httplib2 in packager.py
  • [SERVER-27827] - Improve package smoke testing retry logic

Edit/Copy Release Notes

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