4.0 Changelog
On this page
- 4.0.28 Changelog
- 4.0.27 Changelog
- 4.0.26 Changelog
- 4.0.25 Changelog
- 4.0.24 Changelog
- 4.0.23 Changelog
- 4.0.22 Changelog
- 4.0.21 Changelog
- 4.0.20 Changelog
- 4.0.19 Changelog
- 4.0.18 Changelog
- 4.0.17 Changelog
- 4.0.16 Changelog
- 4.0.15 Changelog
- 4.0.14 Changelog
- 4.0.13 Changelog
- 4.0.12 Changelog
- 4.0.11 Changelog
- 4.0.10 Changelog
- 4.0.9 Changelog
- 4.0.8 Changelog
- 4.0.7 Changelog
- 4.0.6 Changelog
- 4.0.5 Changelog
- 4.0.4 Changelog
- 4.0.3 Changelog
- 4.0.2 Changelog
- 4.0.1 Changelog
4.0.28 Changelog
Security
SERVER-57727 Race conditions in x509_invalid.js
Sharding
SERVER-53335 Queries, updates, and deletes with non-"simple" collations may miss documents when using hashed sharding
SERVER-54064 Sessions on arbiters accumulate and cannot be cleared out
SERVER-55648 Mongos doesn't return top-level batch-write error in case of shutdown
SERVER-59929 Unexpected slower update/insert operation base of splitchunk and moveChunk
SERVER-60654 Backport the autoSplitVector logic to v4.0
SERVER-62065 Upgrade path from 3.6 to 4.0 can leave chunk entries without history on the shards
Replication
SERVER-56096 Invariant failure in ReplicationRecoveryImpl::recoverFromOplog
Aggregation
SERVER-44484 Changestream with updateLookup uasserts on updates from before collection was sharded
SERVER-59613 $range expression should return an error if it exceeds memory limit
Storage
SERVER-45953 Exempt oplog readers from acquiring read tickets
Internals
SERVER-40486 Remove Test Lifecycle code
SERVER-53726 Platform Support: Remove RHEL6 zSeries
SERVER-53728 Platform Support: Remove SLES12 zSeries
SERVER-56326 Add a round() method to the Decimal128 class
SERVER-58104 config.system.sessions collection can end up with invalid chunks if it is dropped and re-sharded with a shard key other than _id
SERVER-58192 Use more unique_ptrs in QueryPlannerAnalysis::analyzeSort()
SERVER-59120 Create unit tests for commitChunksMerge
SERVER-59191 SPIKE: git.get_project fails to clone
SERVER-59725 Remove push task from extra RHEL 6.2 variants
SERVER-59804 Using a separate branch for YCSB in system_perf.yml
SERVER-59874 Delete stats.js on the 4.0 branch.
SERVER-59887 Reduce the change_stream_shard_failover.js test flakiness
SERVER-60290 Update Windows external auth test distribution
SERVER-60344 Action plan on lagging setFCV replicas breaking tests
SERVER-60588 $multiply incorrectly throws an error in some cases in the classic engine
SERVER-60670 Use a separate branch instead of a specific commit for TPCC
SERVER-60671 Remove dagger
SERVER-60934 Increase RSM verbosity in the test change_stream_shard_failover.js
SERVER-60961 Add exclude tags to old branches not generating multiversion_exclude_tags.yml
SERVER-60971 Remove calls to BF suggestion service
SERVER-61152 Fix lint on 4.0 branch
SERVER-61530 Provide large distro option for split tasks on SSL Amazon Linux on 4.0
SERVER-61559 Remove jepsen_register_linearizableRead from 4.0 branch.
SERVER-61791 Pin pymongo
SERVER-62164 Remove several obsoleted build variants across all stable branches
WT-6568 Fix split generation use
WT-6926 Update WiredTiger source code to include 2021 copyright notices
WT-7065 Add check for WT_DHANDLE_DEAD to assertion
WT-7135 Additional checks to detect when writing corrupted metadata
WT-7437 Upgrade documentation to doxygen 1.8.17
WT-7871 Remove comment that is no longer true
WT-7874 Remove two other stale comments
4.0.27 Changelog
Sharding
SERVER-40170 Increase the default timeout for unit-tests which schedule work through NetworkTestEnv::launchAsync
Replication
SERVER-34938 Secondary slowdown or hang due to content pinned in cache by single oplog batch
SERVER-36263 Bypassing operation validation in applyOps should require special privilege
Query
SERVER-58127 Fix benchRun() memory leak for parsing benchRun() args under exception
Storage
SERVER-40712 Clarify the behaviour of db.dropDatabase and the dropDatabase command
Build and Packaging
SERVER-54729 MongoDB Enterprise Debian/Ubuntu packages should depend on libsasl2-modules and libsasl2-modules-gssapi-mit
Internals
SERVER-53726 Platform Support: Remove RHEL6 zSeries
SERVER-53728 Platform Support: Remove SLES12 zSeries
SERVER-55649 Sharding messages being logged for non-sharded clusters
SERVER-56516 Fix undefined behaviour in parsing code for $slice projectional operator
SERVER-57642 Invariant Failure on src/mongo/db/query/plan_yield_policy.cpp 75 | Aborting
SERVER-57798 Direct user to MongoDB Compass download page when failing to install MongoDB Compass due to a connection issue using ./install_compass
SERVER-57983 Integer overflow for $range in Classic Engine
SERVER-58283 Add a new versioning file to set MONGO_VERSION and MONGO_GIT_HASH
SERVER-58402 Increase timeout of shutdown command in shutdown_primary.js
SERVER-59055 Pin oauthlib == 3.1.0 in 4.0 branch
SERVER-59074 Do not acquire storage tickets just to set/wait on oplog visibility
SERVER-59197 Delete fam image entries when the corresponding session documents are deleted
SERVER-59242 update to snmp 5.9.1
SERVER-59262 Remove burn_in_tests tasks from storeFindAndModifyImagesInSideCollection build variants
SERVER-59414 Retry curator setup in powercycle on older branches
SERVER-59504 Fix formatting in network_test_env.h on v4.0
4.0.26 Changelog
Security
SERVER-56240 Turn on checkpointing for the keystore Data Store
Sharding
SERVER-48648 Return updated ShardVersion in _configsvrCommitChunkMerge to avoid blind metadata refresh
SERVER-48653 Return updated ShardVersion in _configsvrCommitChunkSplit to avoid blind metadata refresh
SERVER-56654 Do not use the collection distributed lock for chunk splits
SERVER-56779 Do not use the collection distributed lock for chunk merges
SERVER-56786 There are three routing info refreshes and two chunk scans on the mergeChunks path
SERVER-58109 The new '_configsvrMergeChunks' path is more expensive than the old one
Replication
SERVER-44316 Log message in InitialSyncer for setting begin applying timestamp is incorrect
SERVER-55465 Fix Invariant upon failed request for a vote from the current primary in the election dry-run of catchup takeover
SERVER-56054 Change minThreads value for replication writer thread pool to 0
Query
SERVER-58127 Fix benchRun() memory leak for parsing benchRun() args under exception
Aggregation
SERVER-41741 Improve robustness of change_streams_shell_helper_resume_token.js
Build and Packaging
SERVER-50568 Platform Support: Remove Ubuntu18.04 zSeries from 5.0
SERVER-54729 MongoDB Enterprise Debian/Ubuntu packages should depend on libsasl2-modules and libsasl2-modules-gssapi-mit
Internals
SERVER-40590 Delete KeyedExecutor
SERVER-53643 Startup can see old version of featureCompatibilityVersion document
SERVER-53726 Platform Support: Remove RHEL6 zSeries
SERVER-53728 Platform Support: Remove SLES12 zSeries
SERVER-55119 Create startup warning indicating that X.509 certificates without SANs are deprecated
SERVER-55649 Sharding messages being logged for non-sharded clusters
SERVER-56307 The chunk migration "convergence algorithm" is very primitive
SERVER-56452 Self anchor in PooledLDAPConnection::setup's callback
SERVER-56501 Add op counters for legacy op codes (OP_QUERY, OP_INSERT, etc.)
SERVER-56516 Fix undefined behaviour in parsing code for $slice projectional operator
SERVER-57053 Rewriting $nor with a $text predicate to $not is invalid
SERVER-57057 Reduce routing info refreshes on the mergeChunks path
SERVER-57064 Log create index and dropIndex(es) on mongos
SERVER-57145 Invariant failure at OCSPManager::requestStatus
SERVER-57157 assert serverStatus command works in getBinVersion() jstest helper
SERVER-57275 Update kmip_server.py to be more verbose
SERVER-57328 Make ReplsetTest.upgradeSet() tolerant of reelections
SERVER-57330 Update perf yaml configs for perf and sys-perf to use perf.send
SERVER-57454 Chunk donor propagates NotMaster error from recipient back to MigrationManager making it to believe donor is not primary
SERVER-57497 store_retryable_find_and_modify_images_in_side_collection.js should account for a later clustertime in retried findAndModify responses
SERVER-57564 Increase system timeout duration to >2 hours to allow fio to copy over all files
SERVER-57691 [4.0 only] Return early in TxnResources if not in WUOW
SERVER-57798 Direct user to MongoDB Compass download page when failing to install MongoDB Compass due to a connection issue using ./install_compass
SERVER-57897 Add readPrefMode option to benchRun find/findOne ops
SERVER-57954 Update TPC-C version in sys-perf.yml
SERVER-58118 Spammy logging when RSM is refreshing all hosts
SERVER-58191 [Migrate Protocol] Allow delete_during_migrate.js to tolerate chunk migration failures due to timeout in catchup phase in slow variants.
SERVER-58248 Fix error code when checking if FeatureCompatibilityVersion is majority-committed
SERVER-58283 Add a new versioning file to set MONGO_VERSION and MONGO_GIT_HASH
SERVER-58313 Fix package test failure caused by SERVER-55460 backport to v4.2 and v4.0
4.0.25 Changelog
Sharding
SERVER-40293 change_stream.js removal test should do an unordered check on the change stream
SERVER-47699 Change yield type used by range deleter from YIELD_MANUAL to YIELD_AUTO
SERVER-56515 Chunk merge doesn't consider the
incrementChunkMajorVersionOnChunkSplits
parameterSERVER-57009 Additional debugging information in case of crash during FCV change
SERVER-57055 delete_during_migrate.js is consistently failing in test suites with Code Coverage enabled
SERVER-57102 Fixing invariants on ShardServerCatalogCacheLoader to consider different terms
Write Operations
SERVER-38909 Permit empty update modifiers, treating as a no-op rather than an error
Build and Packaging
SERVER-54057 Mongodb-org-server el8 package has dependency on python2
SERVER-54386 mongodb 3.6.22 install fails if systemctl daemon is not running
SERVER-55460 Fix RPM packaging and testing for SLES 12
Internals
SERVER-37125 Powercycle should ignore a process reference if it no longer exists
SERVER-38811 TCP_KEEPINTVL should be 1 second
SERVER-43617 Add metrics on the mongos to indicate the number of shards targeted for the commands (find, aggregate, etc)
SERVER-45153 Ignore metrics temp files in FTDCFileManager
SERVER-47509 resmoke accepts multiple "mongodSetParameters" options but only uses the last one
SERVER-48636 Increase assertEventDoesNotWakeCursor getMore timeout in only_wake_getmore_for_relevant_changes.js
SERVER-48890 allow $addFields with empty document and have it be a no-op
SERVER-51465 Update package tests after compass installer update
SERVER-52610 Verify installation prefix is added to correct location in the RPM
SERVER-52833 Capped collections can contain too many documents after replication recovery
SERVER-53726 Platform Support: Remove RHEL6 zSeries
SERVER-53728 Platform Support: Remove SLES12 zSeries
SERVER-55019 install_compass does not run on all supported platforms
SERVER-56164 All performance projects use the master DSI branch
SERVER-56217 PoolForHost::_maxInUse is init to <int>::max and cannot be changed, and when connections are maxed DBConnectionPool::get() always throws
SERVER-56361 Better FTDC diagnostics of RSM, including server-side isMaster handling
SERVER-56371 Upgrade timelib to 2021.06
SERVER-56373 [RRFaM] When writing FaM images to txn table, write oplog entries with
needsRetryImage
SERVER-56374 [RRFaM] Have update path write to config.image_collection
SERVER-56375 [RRFaM] Have delete path write to config.transactions
SERVER-56376 [RRFaM] Add jstest that exercises both retryable FaM behaviors
SERVER-56489 New pass-through test with random hello server-side delays
SERVER-56563 [RRFaM] Forge noop image oplog entries for chunk migration
SERVER-56668 Create config.image_collection when setting FCV to 4.0 on primary
SERVER-56713 [RRFaM] Avoid creating images while in initial sync
SERVER-56795 Changes from SERVER-53274 were unintentionally reverted
SERVER-56819 $indexOfCP returns incorrect result when searching for empty string inside empty string with non-zero start index (classic execution engine only)
SERVER-56854 Provide the ability for RSM requests to timeout and mark the server as failed
SERVER-57015 [RRFaM] Writing to the image collection must be in an UnreplicatedWriteBlock
SERVER-57044 [v4.0] Add jstest that changing the FCV will disable new retryable findAndModify format even if storeFindAndModifyImagesInSideCollection=true
SERVER-57172 Do json.send before DSI post_run
SERVER-57173 Write invalidated image for retryable findAndModify when secondaries apply operations earlier than minValid
SERVER-57356 Better logging around failed chunk migration
4.0.24 Changelog
Replication
SERVER-49187 Make ReplSetTest .stepUp() robust to election failures.
SERVER-50049 assert.soonNoExcept() should not access TestData.traceExceptions for non-resmoke tests.
SERVER-51163 Mark nodes returning InvalidReplicaSetConfig in heartbeats as down
SERVER-53666 curSecondary in rollback test fixture not guaranteed to be in SECONDARY state after restart
SERVER-54708 Rollback test fixture only ensures sync source's lastApplied > rollback node's lastApplied if both emrc=false and inMemory
Query
SERVER-36926 Undefined behavior from signed overflow in cursor manager, can result in mongos invariant failure
SERVER-50073 Error message when creating a mixed hashed/not hashed index does not state the problem
SERVER-54710 Large number of $or clauses can create profiling entry exceeding max BSON size, causing the query to fail when it should not
Operations
SERVER-54770 Add /proc/meminfo MemAvailable to FTDC
Build and Packaging
SERVER-54031 errorcodes.py doesn't check embedded C++ code in Python scripts
SERVER-54255 Update RHEL 7 AMI for package testing
Internals
SERVER-5722 Support a 'sort' field in ops array for JS Benchmarking Harness
SERVER-35649 Nodes removed due to isSelf failure should re-attempt to find themselves
SERVER-43847 Make ReplSetTest's stepUp function resilient to slow machines
SERVER-44132 DataBuilder move assignment computes size incorrectly
SERVER-45836 Provide more LDAP details (like server IP) at default log level
SERVER-47030 Fix date_time_support code to not produce exceptions
SERVER-48910 Do not consider keystore.metadata as a keystore on <= 4.0
SERVER-52953 $geoNear does not always match coordinate given to 'near' when maxDistance is set to 0
SERVER-53566 Investigate and reproduce "opCtx != nullptr && _opCtx == nullptr" invariant
SERVER-53612 StepDown hangs until timeout if all nodes are caught up but none is immediately electable
SERVER-53831 Force SpiderMonkey to garbage collect in ReplSetTest.checkOplogs
SERVER-53992 Remove calls to detect-outliers from performance tasks
SERVER-54136 Make the authenticate command respect enforceUserClusterSeparation
SERVER-54139 Remove CURL share support from HTTP curl client
SERVER-55189 Call awaitReplication() before returning from syncFrom() in rslib.js
SERVER-55395 4.0.23 does not build with gcc 10
WT-4296 Add aggressive mode to sweep server
WT-4614 Trigger sweep immediately to reclaim space after a table drop
WT-6309 Add support for start/stop arguments to wt printlog command
WT-6430 Move WT_CONN_SERVER flags into their own field
WT-7026 Atomically read and set ref->addr in case of race
WT-7028 Sweep thread shouldn't lock during checkpoint gathering handles
WT-7104 Redact user data from printlog output
4.0.23 Changelog
Sharding
SERVER-50305 ARS::next() does not respect OperationContext deadline
SERVER-53274 The force-write of the
history
field to all chunks on FCV upgrade from 3.6 to 4.0 is unnecessary
Replication
SERVER-52744 rollback node's lastApplied > sync source's lastApplied in rollback_after_enabling_majority_reads.js
SERVER-53345 Excuse arbiter_new_hostname.js from multiversion tests
SERVER-53459 rollback_all_op_types.js should ensure sync source's lastApplied > rollback node's lastApplied
SERVER-53609 lastCommittedTransaction section causes frequent schema changes that limit FTDC retention
Query
SERVER-40361 Reduce memory footprint of plan cache entries
SERVER-47869 Add diagnostic logging to ClusterCursorManager
Storage
SERVER-46876 During the eviction pressure, we should quit the compact operation instead of crashing the process
SERVER-52950 recoverOplogAsStandalone mode must not start oplog truncater thread
Operations
SERVER-54074 [v4.0] Log start and end of changes to table log settings
Internals
SERVER-43904 When stepping down, step up doesn't filter out frozen nodes
SERVER-46686 Explain does not respect maxTimeMS
SERVER-46740 establishCursors() must always drain the AsyncRequestsSender::_baton
SERVER-52879 Periodic operation latency spikes every 5 minutes due to closing idle cached WT sessions
SERVER-53234 jstests/core/profile2.js fails when background operations are run against test database
SERVER-54091 Update assertion messages for dbhash check run by resmoke.py
SERVER-54134 Ignore newer mongo versions on older branches of setup_multiversion_mongodb.py
4.0.22 Changelog
Sharding
SERVER-36739 Use the mongos_manual_intervention_action hook in concurrency stepdown suites
SERVER-41192 Add a metric for the size of the SessionCatalog under
logicalSessionRecordCache
SERVER-42632 Disable pinger threads that reach out to config server to make integration tests pass
SERVER-46393 Always check client last operation time when computing operationTime to append to the response
SERVER-48679 flushRoutingTableCacheUpdates should block on critical section with kWrite, not kRead
SERVER-51808 invariant failure: readConcern level != Available
SERVER-51885 Blacklist balancing_sessions_collection.js from sharding_csrs_continuous_config_stepdown
SERVER-52955 KeysCollectionClientDirect should check if majority read concern is supported by storage engine
Replication
SERVER-33747 Arbiter tries to start data replication if cannot find itself in config after restart
SERVER-50116 Forbid oplog writes when replication is enabled
SERVER-51262 Rename skipCheckingForNotMasterInCommandDispatch to skipCheckingForHelloInCommandDispatch
SERVER-51598 Add new test suites that test transaction expiration logic
SERVER-51887 "InvalidNamespace" in oplog tests on 4.0 branch
SERVER-52560 oplog_writes_only_permitted_on_standalone.js must wait for insert to be in stable checkpoint
SERVER-52680 Removed node on startup stuck in STARTUP2 after being re-added into the replica set
SERVER-53026 Secondary cannot restart replication
Query
SERVER-32960 $mod has inconsistent rounding/truncation behavior
Aggregation
SERVER-48523 Unconditionally check the first entry in the oplog when attempting to resume a change stream
Storage
SERVER-51858 Investigate queryable issue on 4.0.20
SERVER-52902 Remove assertion !haveJournalFiles() at dur_journal.cpp:265
Operations
SERVER-46729 Make Windows shell soft-fail for unavailable OCSP responder
SERVER-51757 Collect /proc/vmstat numa_pages_migrated statistics in FTDC
Build and Packaging
SERVER-52891 Run PPC builds less frequently
Internals
SERVER-45624 Pre-split and distribute chunks of sessions collection
SERVER-45992 InMemory engine startupwarnings confusing
SERVER-48742 Log whenever profiler settings are changed via setProfilingLevel
SERVER-49165 endSessions command in Client.Disconnect causes an authorization failure for an unauthed connection on a host that requires authentication
SERVER-50123 Record number of physical cores on all platforms
SERVER-50267 Set output limit for 'rawMongoProgramOutput()'
SERVER-50365 Stuck with long-running transactions that can't be timed out
SERVER-50445 Return the value as double when NumberLong subtraction overflows in ExpressionSubtract
SERVER-50605 Add {logMessage: "msg"} test-only command
SERVER-51303 Lookup stage followed by $match on type uses wrong field in matching condition
SERVER-51607 Upgrade Twisted dependency to at least twisted-19.7.0
SERVER-51902 Check if storage engine supports Recover to Stable Timestamp rather than if eMRC=false in sync_tail.cpp
SERVER-52646 Validate and possibly fix edge cases in regex rewrite rules for userToDNMapping
SERVER-52654 new signing keys not generated by the monitoring-keys-for-HMAC thread
SERVER-52806 deb install files assume systemd
SERVER-52969 Disable Powercyle on non-master branches
SERVER-53233 Fix change_streams_update_lookup_shard_metadata_missing.js [4.2, 4.0]
SERVER-53348 Pin PyOpenSSL
WT-6507 Exit cache eviction worker after our operation has timed out
WT-6602 Allow operation timeout ms to be passed to commit and rollback
WT-6666 Start op timer when we configure it in rollback and commit
4.0.21 Changelog
Security
SERVER-45803 mongodecrypt needs a ServiceContext
SERVER-45938 Allow matching O/OU/DC in client x509 cert if clusterMode:keyFile
SERVER-47733 SymmetricEncryptorWindows shouldn't pad when update is called
SERVER-50463 Make PooledLDAPConnection::refresh take self-ownership
Sharding
SERVER-47616 Improve error when logical sessions cannot have more than one user authenticated on a single connection
Replication
SERVER-48518 Rollback via refetch (EMRC = false) can make readers to see the rolled back data even after the rollback node catches up to primary.
SERVER-48928 Allow primary-elect to complete drain mode even if it is stepping down unconditionally
SERVER-49986 Convert isMaster command to hello and add aliases
SERVER-49987 Rename response fields if “hello” is sent on mongod
SERVER-49988 Rename response fields if "hello" is sent on mongos
SERVER-49989 Add db.hello() shell helper
SERVER-49990 Alias setSlaveOk() and getSlaveOk() shell helpers
SERVER-49991 Alias printSlaveReplicationInfo() shell helper
SERVER-50607 Must hold mutex when calling _checkForShutdownAndConvertStatus_inlock
SERVER-50626 Race in read_concern_majority_getmore_secondaries.js
SERVER-50631 [v4.0] Ban rollback_after_disabling_majority_reads.js with --nojournal and MMAPv1
SERVER-50640 listCommands should return "isMaster" alias in addition to "hello" command name
SERVER-50747 Increase no-op interval in change_streams_update_lookup_shard_metadata_missing.js
SERVER-50963 rollback_via_refetch_anomaly.js fails on inMemory storage engine
Query
SERVER-18341 Matcher returns false positives in comparison predicates with MinKey/MaxKey
SERVER-35921 Index scan uses incorrect bounds for MinKey and MaxKey
SERVER-39392 Invariant in PlanStage::dispose always evaluates as true
SERVER-45233 Indexed inequalities to arrays return incorrect results
SERVER-50291 Add query knob to enumerate $or children in a different order
SERVER-51083 Problem with regex index bounds
SERVER-51120 Find queries with SORT_MERGE incorrectly sort the results when the collation is specified
Aggregation
SERVER-40317 $facet execution has no limit on how much memory it can consume
Storage
SERVER-50915 [v4.0] fsyncLock must not take a stable checkpoint when majority read concern is off
Operations
SERVER-26726 Check number of arguments for createIndex() and throw error if more than two arguments
Build and Packaging
SERVER-46342 DEB installs of MDB do not issue systemctl daemon-reload on install
SERVER-47138 MSI installer produces incorrect config file
SERVER-50078 Compile bypass applied when it should not have
Internals
SERVER-15902 use signal handling stack via sigaltstack to improve behavior on stack overflow
SERVER-41872 PlanEnumerator AndAssignment::choices ordering not stable and is relevant to set of plans generated
SERVER-43233 Add ability to request only specific attribute(s) for the LDAP groups
SERVER-43973 jsTestName() should return a unique name for each thread in the parallel suite
SERVER-45202 Improve Command alias infrastructure
SERVER-47883 Newly-elected primaries do not wait for single-phase background index builds to complete before accepting writes
SERVER-48410 Signed integer overflow fix for datetime library
SERVER-48709 signing key generator thread on config server not waken up as expected
SERVER-49054 Server MSI should install Compass instead of Compass Community
SERVER-49352 4.0 does not build with python 3.8
SERVER-49786 Freeze DSI and Genny for non-master perf projects
SERVER-50180 Fix User lifetime management in AuthorizationManager::acquireUserForSessionRefresh
SERVER-50183 Copy _awaitPrimaryAppliedSurpassesRollbackApplied function from RollbackTest to RollbackTestDeluxe
SERVER-50216 Adjust sys-perf frequencies
SERVER-50736 Make OpenSSL explicitly accept SNIs presented in ClientHello
SERVER-50818 Coverity analysis defect 114987: Wrapper object use after free
SERVER-51106 Make the isMaster command a derived class of hello
SERVER-51608 [4.0] backport implicitly_retry_on_background_op_in_progress.js
SERVER-51802 Add requires_majority_read_concern tag to decrypt_tool.js on v4.0
TOOLS-2589 [v4.0] sslAllowInvalidHostnames bypass ssl/tls server certification validation entirely
WT-6421 Avoid parsing metadata checkpoint for clean files
WT-6559 Use the session ID from the new session to determine statistics bucket
WT-6598 Add new API allowing changing dhandle hash bucket size
4.0.20 Changelog
Sharding
SERVER-40441 Arbiter nodes log error messages when try to create session collection or check if it exists
SERVER-44115 Exclude jstests/core/autocomplete.js from sharded jscore tests
SERVER-47799 AsyncRequestsSender should update replica set monitor in between retries for InterruptedAtShutdown
SERVER-48491 Add requires_document_locking tag to sessions_collection_reaping.js
SERVER-48674 Check if replication is enabled before checking if the node is an arbiter in LogicalSessionCacheImpl
SERVER-48926 Fix remaining sharding tests that incorrectly set votes to 0 on shard secondaries
SERVER-49233 Introduce a flag to toggle the logic for bumping collection's major version during split
Replication
SERVER-37390 RollbackTestFixture doesn't need to wait for a new primary if it didn't shut down the current primary
SERVER-42004 localhost{1,2,3}.js tests should wait for a primary to be elected before shutting down the test
SERVER-45610 Some reads work while system is RECOVERING
SERVER-46897 REMOVED node may never send heartbeat to fetch newest config
SERVER-47849 Add more logging to shutdownTask
SERVER-48276 ReplSet Free Monitoring URLs inconsistent
SERVER-48967 Prevent replicated writes on empty namespaces on secondaries
SERVER-50039 Timing error in dbadmin.js test
Query
SERVER-47223 geoNear/$geoNear does not apply index hints
SERVER-48993 explodeForSort can produce incorrect query plan
SERVER-49527 recoverFromOplogAsStandalone does not relax index constraints
Storage
SERVER-43097 Improve log messaging when index builds get foregrounded because of startup recovery
SERVER-47694 fix multikey. again
SERVER-48453 Lazily initialize a record store's auto incrementing counter on deletes
SERVER-48695 setAppliedThrough must set orderedCommit=false on the recovery unit
SERVER-49449 index_restart_secondary.js is not compatible with storage engines without support for persistence
Operations
SERVER-44051 getShardDistribution() does not report "Collection XYZ is not sharded" on dropped but previously sharded collections
SERVER-48244 Shell should not hard-code the allowed explain levels and let the server reject it instead
Build and Packaging
SERVER-42042 Warn or fail early on dynamic builds with toolchain compiler and tcmalloc
SERVER-46927 Clarify dependencies for release-related tasks
SERVER-48329 Adjust naming of action_type.h on either master or all stable branches
SERVER-48640 Update RHEL 6.2 AMI for package tests
SERVER-48659 Update SLES 12 AMI for package tests
SERVER-48681 Update Debian 8.1 AMI for package tests
SERVER-49925 Dynamic builders should not combine the mongodbtoolchain with tcmalloc
SERVER-50124 Pin lazy-object-proxy python module
Internals
SERVER-33229 Overload startParallelShell in auto_retry_on_network_error.js to connect after loading the auto_retry_on_network_error.js override
SERVER-36454 Upgrade ASIO
SERVER-37993 Upgrade asio to eed287d46c14310f0daf4ff19b0297917143723
SERVER-41600 IndexCatalog::refreshEntry should invalidate the index from the CollectionInfoCache
SERVER-42908 Add ErrorCodes to retryable errors to match drivers
SERVER-46758 setFCV can be interrupted before an FCV change is majority committed and rollback the FCV without running the setFCV server logic
SERVER-47930 Ubuntu 20.04 - ldap_authz_authn.js fails to load test certificate
SERVER-48032 Update references of community mailing-lists to MongoDB Developer Community Forums
SERVER-48107 Retry replSetStepDown in rollback_test.js
SERVER-48514 Separate testing 'called' and 'successful' fields for serverStatus election metrics
SERVER-48569 Add ConflictingOperationInProgress as acceptable error code to stepDown in validateCollectionsCallback
SERVER-48657 Use evergreen module to control signal processing in perf projects
SERVER-49007 Roundtrip registration ID in metrics response in mock_http_server.py
SERVER-49071 Make ldap_fastest_host_selection.js tolerate missing LDAP servers in statistics
SERVER-49142 Validate correct field name in RoleName::parseFromBSON()
SERVER-49335 publish_packages should use barque API key
SERVER-49404 Enforce additional checks in $arrayToObject
WT-5242 Minimize checkpoints pinned during backup
WT-6118 Fix missing checkpoint in backup
WT-6141 Disable checkpoint deletion during backup
4.0.19 Changelog
Sharding
SERVER-37929 ShardRegistry in config servers can keep invalid entries after it rolls back until next reload
SERVER-39498 ShardRegistry reload inside onReplicationRollback can get stuck
SERVER-42862 Prevent shard refreshes in mergeChunks command from joining earlier refreshes
SERVER-45910 Router might target wrong shard on write operation for unsharded collection
SERVER-46487 The mongos routing for scatter/gather ops can have unbounded latency
SERVER-46942 State information can be leaked if server closes too quickly on network_interface_tl
SERVER-47436 Make shards validate shardKey in dataSize command
SERVER-47745 Make chunk query in ShardingCatalogManager compatible with chunks created in 3.4
SERVER-47913 Redact sharding messages in split chunk and distributed lock acquisition
SERVER-47999 balance_repl.js should ensure writes have replicated before attempting to read them from a secondary
Replication
SERVER-46195 Secondary in rollback_after_enabling_majority_reads.js goes into rollback before validate command
SERVER-47558 Revert SERVER-38356 on 4.0
SERVER-47613 Invariant in processReplSetRequestVotes
SERVER-47695 Write commands run by threads that can survive rollback can fail operationTime invariant in ServiceEntryPoint
SERVER-48276 ReplSet Free Monitoring URLs inconsistent
SERVER-48374 Pass in array for awaitReplication() in rollback_after_enabling_majority_reads.js
Query
SERVER-40805 Indicate the reason for replanning in the log file
SERVER-47209 change_streams_update_lookup_shard_metadata_missing.js should handle the node the change stream cursor was established on going through rollback
SERVER-47773 geoNear invariant on mongos
SERVER-47994 Fix for numerical overflow in GeoHash
Write Operations
SERVER-47233 WriteOp can be left in pending state, leading to erroneous NoProgressMade write error from mongos
Aggregation
SERVER-44689 Add serverStatus counter for each use of an aggregation stage in a user's request
Storage
SERVER-46398 Suggest explicit dbpath when starting mongod on macOS and the default dbpath isn't found
SERVER-46699 Report the oplog visibility timestamp in FTDC
Operations
SERVER-45295 Make sure that LDAP logs always contain context on AuthZN operation
Internals
SERVER-39241 Plan scoring incorrectly applies noFetchBonus bonus to all plans when no projection is provided
SERVER-42525 Single-node replica sets shouldn't wait for electable caught up secondaries during shutdown
SERVER-43889 Distinguish between a retryable write and a transaction when failing a command
SERVER-45334 Service Name not respected in MSI Installer
SERVER-45367 When the Range Deleter is waiting for the open cursors, list these cursors in the logs.
SERVER-45508 Invariant failure in getFieldsWithStringBounds with descending point ranges
SERVER-46633 Windows TLS implementation may declare hostname mismatch on unrelated error
SERVER-46758 setFCV can be interrupted before an FCV change is majority committed and rollback the FCV without running the setFCV server logic
SERVER-47063 Upgrade static OpenSSL to 1.1.1e
SERVER-47071 CheckReplOplogs can fail to detect a mismatch
SERVER-47187 Add startup warning when SeIncreaseWorkingSetPrivilege not present
SERVER-47256 Update listed maintainer for repo package files
SERVER-47373 Improve handling of empty TLS packets
SERVER-47634 Make metric tests in stepup.js more robust
SERVER-47686 Upgrade static OpenSSL to 1.1.1g
SERVER-47765 4.0 Only: Make variables declared above DocumentSourceGraphLookup available within
SERVER-47798 Audit isMaster response validation for mongod and mongos
SERVER-48269 Fix rlp tests in 4.0
4.0.18 Changelog
Security
SERVER-46834 Use monotonic time in UserCacheInvalidator
SERVER-47113 LDAP connection pool acquisition state should own host list
Sharding
SERVER-29153 Make sure replica set nodes agree on which node is primary before doing writes in ShardingTest initialization
SERVER-44463 insertConfigDocumentsAsRetryableWrite() incorrectly calculates BSON array overhead
SERVER-45119 CollectionShardingState::getCurrentShardVersionIfKnown returns collection version instead of shard version
SERVER-46307 database_versioning_safe_secondary_reads.js should not set "votes: 0" on the shard secondaries
Replication
SERVER-33627 Initial syncer needs to handle exception
Query
SERVER-32903 Ambiguous field name error should be ignored during initial sync
Operations
SERVER-34199 "timing" section of serverStatus can have large impact on ftdc retention
SERVER-41117 Blacklist autocomplete.js from parallel testing
SERVER-44892 getShardDistribution should use $collStats agg stage instead of collStats command
SERVER-46024 Collect /proc/vmstat swap statistics in FTDC
Build and Packaging
SERVER-46983 Upload repobuilding packages to correct URL
SERVER-46996 all push/publish_packages tasks should run on small hosts
Internals
SERVER-30739 config_server_checks.js should assert if initial replSetConfig fails
SERVER-36467 continuous stepdown overrides should maintain parameters
SERVER-37148 Remove mr_shard_version.js and mr_during_migrate.js in favor of MR FSM test
SERVER-38119 Windows dump file naming does not account for dots in directory names
SERVER-42278 Log SockAddrs produced during LDAP connection establishment with manually derived sizes
SERVER-43763 Figure out if global LDAP synchronization can be disabled when libldap is built with OpenSSL.
SERVER-45050 Change Windows Kerberos client to use default credentials when no password is specified
SERVER-45156 SockAddr constructor should take sockaddr, not sockaddr_storage
SERVER-45867 Use latest version of signal processing
SERVER-46754 Use new repobuilder service
SERVER-46766 Teardown clusters after every perf run
SERVER-46851 Decrease the number of jobs in logical session cache tests
SERVER-46899 Fix tcmallocReleaseRate parameter in 4.0 and 3.6
SERVER-47080 Enable verbose logging for LDAP tests
SERVER-47114 Make ldapproxy.py use IOCP on Windows
WT-5119 Birthmark records can be read as normal updates if reads race with checkpoints
WT-5376 WT_UPDATE.type field can race with visibility checks when returning key/value pairs
4.0.17 Changelog
Sharding
SERVER-44598 Shards do not treat the IGNORED version as "intended sharded"
SERVER-45273 Remove the mongos version check in allow_partial_results.js and return_partial_shards_down.js
SERVER-45599 Backport the changes to CollectionShardingState done as part of SERVER-32198 to 4.0
SERVER-45770 Add to information contained in logfile about "moveChunk.to"
SERVER-46001 Move checkShardingIndex outside shardCollection's read critical section on the primary shard
SERVER-46466 Race with findAndModify retryable write and session migration
Replication
SERVER-34768 Rollback can fail if run against a lagged node that catches up
SERVER-35050 Don't abort collection clone due to negative document count
SERVER-35437 Wait for secondary state after stepdown command in multi_rs.js
SERVER-39112 Primary drain mode can be unnecessarily slow
SERVER-39495 Shard key is omitted from update and remove oplog entries with multi:true
SERVER-42219 Oplog buffer not always empty when primary exits drain mode
SERVER-43867 Work around unrecoverability of rollback via refetch in tests
SERVER-45178 Rollback via refetch can cause rollback to happen successfully w/o updating the rollback id.
SERVER-45493 temporarily disable failing assertion in election_candidate_and_participant_metrics.js
SERVER-45840 Blacklist tests that run emptycapped from replica_sets_kill_secondaries_jscore_passthrough
SERVER-46050 Use getLastAppliedOpTime rather than getHeartbeatAppliedOpTime for checking primary's position
SERVER-46238 Race between commitTransaction and transaction expiration leads to invariant
Query
SERVER-45363 Issue with mongodb text indexes and weights when using wildcard specifier
Aggregation
SERVER-45418 DocumentSourceCursor batching memory accounting does not account for empty documents, leads to unbounded memory use for count-like aggregates
Internals
SERVER-40014 System-Perf: Default is_patch expansion to false
SERVER-44325 Add polyfill for certificate chain verification
SERVER-44435 Allow x509 authorization to be selectively enabled based on the CA
SERVER-44853 MSI Should skip install MongoD service dialog when mongod is not selected to be installed
SERVER-45766 Remove "requires" from the server yaml
SERVER-46082 Use bin/analysis.py for performance projects
SERVER-46126 LDAP proxy and mongod startup race in ldap_insuffcient_access_rights.js
SERVER-46174 Free peer certificate in SSL_get0_verified_chain polyfill
SERVER-46365 getMore command before rs.initiate() can trip invariant
SERVER-46630 RemoveSaver writes GCM tag to incorrect file position
WT-5150 LAS sweep is not removing the entries that are no longer required
WT-5192 Don't allow checkpoints to evict without a snapshot
WT-5263 Prepared updates written to the lookaside file are not always read as needed
WT-5395 Fix a bug in the read lock implementation when there is a lot of contention
WT-5587 Limit how many checkpoints are dropped by a subsequent checkpoint
4.0.16 Changelog
Sharding
SERVER-44103 clear_jumbo.js should wait for balancer to be on mode: full for more than one round
SERVER-44130 Flip order of assert.lte arguments in logical_time_metadata.js
Replication
SERVER-45758 Add sleep to TimeInactiveMicrosShouldBeSetUponUnstashAndStash in session_test
SERVER-45761 Use same clock for test and working code in session_test [v4.0]
Query
SERVER-44658 Add correct tags for noPassthrough/max_time_ms.js
SERVER-45279 GranularityRounder can get stuck in loop when rounding infinity
Storage
SERVER-38794 CollectionOptions can be lost in createCollection if a write conflict exception is thrown
SERVER-45289 Conditional jump or move depends on uninitialised value(s) in validate_adaptor.cpp
Build and Packaging
SERVER-45713 Run rhel7 push and publish tasks on large rhel70 distro
SERVER-45732 Filter flags from net-snmp-config invocation more aggressively
Internals
SERVER-40047 Test for blocking queue should not test for non-guaranteed condition
SERVER-42573 Only warn about readConcernMajority enabled in primary-secondary-arbiter configuration
SERVER-45486 Add information to debug index key count mismatch issue in 'hashed_index_bad_keys_cleanup.js'
SERVER-45831 [4.0] Performance regression processing large aggregation commands
4.0.15 Changelog
Security
SERVER-45309 Ensure bind credentials live longer than LDAP operations
Sharding
SERVER-33597 Make allow_partial_results.js, return_partial_shards_down.js start shards as replica sets
SERVER-36865 make fsm workloads that extend kill_rooted_or.js more robust in the sharded concurrency suites, or blacklist them
SERVER-43195 Add namespace to ChunkManager ShardKeyNotFound failure in order to better diagnose failures.
SERVER-44341 Do not choose only first shard of all shards associated with a zone when pre-splitting during shard collection
SERVER-45100 Make the BatchWriteExecutor retry multi-writes only against unsuccessful shards
Replication
SERVER-35407 ReplicationCoordinatorExternalState and data replication must not be started after shutdown
SERVER-44061 Race while setting replication maintenance mode.
SERVER-44503 Race in replsets/auth2.js
SERVER-45396 fix the "me" field in isMaster responses when using splithorizon
Query
SERVER-42565 Aggregations and find commands sort missing fields differently
SERVER-45152 Negation of inequality on array can trip invariant
Aggregation
SERVER-44733 Change stream should throw ChangeStreamFatalError if a single shard cannot be targeted for updateLookup
Storage
SERVER-43910 include Client/OpCtx information in LockManager::dump() output
SERVER-44796 Adjust nojournal startup warning to be more compelling
Operations
SERVER-45290 Remove upstream metadata from v4.2's third party library manifest
Build and Packaging
SERVER-44550 Remove mobile specific embedded commands
SERVER-45346 Ubuntu 18.04 package testing task fails to install openssl
Internals
SERVER-34844 Relax expectations in apply_batches_totalMillis
SERVER-37406 A stashed Locker should keep information about the owning transaction
SERVER-39131 Refactor storage engine lock file support
SERVER-43210 jstests/sharding/kill_sessions.js doesn't wait for operation to be killed.
SERVER-43246 Add a log line for when a cursor is reaped due to logical session cleanup
SERVER-43349 Incorrect serialization for $elemMatch $not $ne
SERVER-44578 Remove unused db_raii and server_status libs from storage_wiredtiger_core's LIBDEPS_PRIVATE
SERVER-44828 Correct logic to re-compute dependencies after absorbing a $sort into query layer
SERVER-45472 Ensure RoleGraph can serialize authentication restrictions to BSON
WT-4636 Fix strace in syscall test
WT-5042 Reduce configuration parsing overhead from checkpoints
WT-5106 Remove temporary files in clang-format script
WT-5112 Handling goto labels with multiple words in s_goto.py
WT-5120 Checkpoint hangs when reconciliation doesn't release the eviction generation
WT-5125 Adding new stats for eviction target strategy
WT-5135 Change lookaside file inserts to use cursor.insert
WT-5169 WT_REF_LIMBO pages cannot support fast (leaf-page only) searches
WT-5196 Data mismatch failures with test/checkpoint after enabling LAS sweep
WT-5218 Improve eviction to differentiate between clean and dirty pages with WT_CACHE_EVICT_NOKEEP readgen
WT-5239 Fix syscall failure about metadata file open
WT-5247 Ensure that only idempotent modify operations are logged
WT-5277 Cursor key out-of-order detected in the lookaside file
WT-5297 syscall.py fail on mongodb-4.0
4.0.14 Changelog
Security
SERVER-28011 Support multiple KMIP hosts in the --kmipServerName parameter
SERVER-43090 Fix LDAP connection health tests with Okta
SERVER-43653 Upgrade static OpenSSL to 1.1.1d
SERVER-44320 Allow zoned sharding commands to be authorized via actiontypes
Sharding
SERVER-31083 Allow passing primary shard to "enableSharding" command for a new database
SERVER-42737 MongoDB stuck on update metadata
SERVER-42914 Implement random chunk selection policy for balancer for use in concurrency_*_with_balancer workloads
SERVER-44476 Include number of jumbo chunks remaining in output of removeShard
Replication
SERVER-41504 Track the number of ops during catchup in replSetStatus on primaries
SERVER-41505 Track the average number of catchup ops in serverStatus
SERVER-41506 Track metrics associated with a node calling an election
SERVER-41507 Track the time the new term oplog entry was written in replSetStatus on primaries
SERVER-41508 Track the time the new term oplog entry was majority committed in replSetStatus on primaries
SERVER-41512 Track metrics associated with a node voting in an election
SERVER-41513 Track the time the new term oplog entry was written by the primary and applied by secondary in replSetStatus on all nodes
SERVER-42534 Step down primary for less time in freeze_timeout.js and increase electionTimeoutMillis
SERVER-43239 numCatchUpOps in repSetGetStatus is incorrect
SERVER-43398 Fix race in replSetGetStatus_new_term_oplog_entry_fields.js
SERVER-43695 Add sleeps to session_test.cpp to account for discrepancy between curTimeMicros and Date_t clock sources [v4.0]
SERVER-43703 Race when disabling rsSyncApplyStop failpoint and stopping server
SERVER-43868 Session::TxnResources::release() can throw exceptions in destructors (4.0.x only)
SERVER-43879 OplogInterfaceLocal::next should return an owned BSON obj
SERVER-43972 initial_sync_capped_index.js should check SECONDARY state before running validate
SERVER-44005 Improve robustness of rollback_after_enabling_majority_reads.js
SERVER-44643 Use awaitSecondaryNodes in rollback_after_enabling_majority_reads.js instead of waitForState
SERVER-44675 server_status_metrics.js fails due to racy repl.buffer.count metric in serverStatus
SERVER-44788 Use awaitSecondaryNodes in seed_secondary_without_sessions_table.js instead of waitForState
Query
SERVER-32567 Replace queryoptimizer3.js with FSM test
SERVER-43699 Find $mod can result in UB
SERVER-44050 Arrays along 'hashed' index key path are not correctly rejected
SERVER-44269 Modernize max_time_ms.js
SERVER-44571 Documents involved in SERVER-44050 corruption scenario cannot be updated or deleted after upgrade
Aggregation
SERVER-38691 serverInfo not present in explain output for aggregation
SERVER-42756 $multiply operator may return with or w/o an error depending on whether pipeline optimisation is enabled
SERVER-43034 Special values handling is inconsistent in DoubleDoubleSummation
SERVER-43764 Add more testing for special values in DoubleDoubleSummation
SERVER-44174 $push and $addToSet should restrict memory usage
SERVER-44869 Add query knob to control memory limit for $push and $addToSet
Storage
SERVER-42312 Validate during rollback can cause count mismatch
SERVER-43322 Add tracking tools for measuring OplogStones performance
SERVER-43908 Modify IndexConsistency hash-map keys to avoid hitting an invariant on duplicate index keys in KeyString form for different indexes
SERVER-44188 [4.0] validate_tests should remove index entries by RecordId obtained from the cursor
Operations
SERVER-28604 Log when a cursor is reaped for exceeding the timeout
Build and Packaging
SERVER-37766 Platform Support: Remove Community zSeries From 4.0
SERVER-37772 Platform Support: Add Community & Enterprise RHEL 8 x64
SERVER-44392 Platform Support: Remove zSeries ubuntu 16.04
SERVER-44545 Remove builders for Embedded SDKs on Mobile Platforms
SERVER-44546 Remove mobile specific build and code artifacts
SERVER-44687 error: 'operator delete' is unavailable: introduced in macOS 10.12
Internals
SERVER-25025 Improve startup time when there are tens of thousands of collections/indexes on WiredTiger
SERVER-38002 Upgrade Pcre to at least 8.42
SERVER-39574 Support intermediate certificates in PEMKeyFile on Windows
SERVER-40218 Write out expansions in system_perf.yml with expansions.write
SERVER-40669 install_compass should not explicitly use python3
SERVER-40749 Include execution in generated task configuration file name
SERVER-42014 [4.0] repairDatabase should catch and report exceptions from repairCollections before re-opening the database
SERVER-42961 Fix Split Horizon testing on SLES
SERVER-43079 failpoint triggered by LogicalSessionCacheRefresh
SERVER-43085 Regenerate all testing certificates with SHA-256 instead of SHA-1
SERVER-43151 Error in aggregation assertion at value.cpp:1368
SERVER-43241 Fix Executor failures in ARS dtor during shutdown
SERVER-43319 Increase cursor timeout for 'concurrency_simultaneous' fixtures
SERVER-43576 DBClientRS does not propagate applicationName
SERVER-43577 Ensure ssl exceptions that terminate connections are logged.
SERVER-43741 scons.py should not swallow the underlying ImportError
SERVER-43771 Make v4.0's ClockSource::waitForConditionUntil avoid conversion of Date_t::max() to system time
SERVER-43843 Skip validate during the rollback fuzzer "restartNode" command
SERVER-43900 Set max_hosts to 1 for stitch_support_lib_build_and_test and embedded_sdk_build_and_test task groups
SERVER-44006 Change Packaging License from AGPL to SSPL
SERVER-44009 Upload pip freeze output for sys-perf and microbenchmarks
SERVER-44064 Perform explicit cast on MessageCompressorManager parameter
SERVER-44140 Use signal processing without DSI
SERVER-44183 Failure to listen on an asio socket should be fatal
SERVER-44248 [4.0] Use tojson instead of JSON.stringify in disk/repair_collection_failure.js
SERVER-44312 Specify evergreen auth in performance tests for signal processing
SERVER-44319 Skip keyfile check in replica_sets/auth1.js on windows
SERVER-44567 Reimplement CommandState destructors for v4.0
SERVER-44568 Update the embedded version of the server's timezone data file to tzdb-2019c
SERVER-44651 Update signal processing version
SERVER-44727 detect-changes should not be called via run-dsi
SERVER-44868 Initialsync logkeeper and logkeeper-short tests should pass snapshot ID and dataset link respectively to dsi(sys-perf)
SERVER-44946 Reenable tests disabled in BACKPORT-4512
WT-4499 Fix prepared transactions for cursor key order check failure
WT-4520 Fix prepare transactions fallout during cursor navigation
WT-4537 Fix WiredTiger cursor prev/next traversal failure on prepare retry
WT-4617 Cursor next/prev returns PREPARE_CONFLICT only once
WT-4733 Change test/format to do longer-term repeatable read testing
WT-4844 Only log an informational message when a set read-timestamp is older than the oldest timestamp.
WT-4899 Fix bugs that could allow more than one birthmark in an update chain
WT-4940 Reconciliation should set prepared/uncommitted for each update
WT-4943 Fix a bug where uncommitted updates could be discarded
WT-4961 Checkpoints with cache overflow must keep history for reads
WT-5160 Stop requiring a checkpoint before calling rollback_to_stable
WT-5201 Migrate develop test format to mongodb-4.0 branch
4.0.13 Changelog
Security
SERVER-43751 Recompute compressor manager message parameters
Sharding
SERVER-10456 get cursor logic used to find docs to clone (in migration) is not same as in removeRange
SERVER-36159 Log whenever the gossiped config server opTime term changes
SERVER-36222 call to ReplSetTest.restart in shard_identity_rollback.js is racy
SERVER-36315 After stepdown the CSRS dist lock manager keeps trying to unlock locks
SERVER-41480 Increment collection major version on chunk splits/merges
SERVER-42793 Autosplit size tracker random initial value is too low
Replication
SERVER-34526 Remove the livenodes list from repl tests
SERVER-37173 rollbackViaRefetch should survive attempt to drop non-existent collection
SERVER-38356 Forbid dropping oplog when replset config is present
SERVER-38685 Startup warning if In-Memory SE is used and writeConcernMajorityJournalDefault is true
SERVER-39310 Check canServeReadsFor in getMores
SERVER-40009 Set/honour initial sync flag at the early stages of initial sync
SERVER-40954 Error message for UnrecoverableRollbackError in FCV 3.6 should recommend downgrading to 3.6
SERVER-41218 rollback_after_enabling_majority_reads.js test should ensure the correct primary before restarting other nodes [v4.0]
SERVER-41499 Track number of elections called for each reason in serverStatus
SERVER-41500 Track number of successful elections for each reason in serverStatus
SERVER-41501 Track the number of elections that require primary catchup in serverStatus
SERVER-41502 Track the number of times primary catchup concludes for each reason in serverStatus
SERVER-41503 Track the target opTime for catchup in replSetStatus on primaries
SERVER-41509 Track the number of attempted stepDowns in serverStatus
SERVER-41510 Track the number of failed stepDowns in serverStatus
SERVER-41511 Track the number of stepdowns caused by seeing a higher term in serverStatus
SERVER-41792 Starting replica set member standalone with recoverFromOplogAsStandalone as true should replay entries from oplog based on the checkpoint we start from.
SERVER-41918 CollectionBulkLoader does not anticipate exceptions from MultiIndexBlock
SERVER-42129 Modify test to account for the ephemeralForTest storage engine's missing oplog after restart
SERVER-42155 Indicate term mismatches when readConcern times out
SERVER-42454 Wait for node to find appropriate sync source before disabling failpoint in do_not_advance_commit_point_beyond_last_applied_term.js
SERVER-42714 Log replication recovery oplog application completion at level 0
SERVER-42767 Improve logging in ReplSetTest.stopSet
SERVER-42910 Oplog query with higher timestamp but lower term than the sync source shouldn't time out due to afterClusterTime
SERVER-43230 Fix race in catchup_takeover_two_nodes_ahead.js
SERVER-43245 Wait for node to be secondary on restart in seed_secondary_without_sessions_table.js
Query
SERVER-37690 countDocuments throws an error when matching 0 document
SERVER-40110 ClusterCursorManager::CursorEntry::isKillPending() should not call checkForInterrupt
SERVER-40382 Add a serverStatus metric to report plan cache memory consumption
SERVER-41863 Make sleep command check that server clock has advanced before returning
SERVER-42749 Ban server_status_with_timeout_cursors from transaction passthroughs
SERVER-43074 Do not use a global variable to encode 'multikeyPath' information when writing out catalog documents
Storage
SERVER-41909 Add the ValidateCmd Genny workload to system_perf.yml
SERVER-42398 abortTransaction and commitTransaction commands should not acquire ticket irrespective of the prepared state.
SERVER-42441 renameCollectionForApplyOps should always rename the target out of the way if it exists
SERVER-42652 Fix issue with rename collection
SERVER-42709 Change error message about missing UUIDs on startup
SERVER-42915 New style repair's catalog corrections are often false positives, aggressively marking repl nodes as corrupted
Operations
SERVER-42257 Add new shell startup banner
SERVER-43081 validate should report when an index's 'multikeyPaths' are set but the 'multikey' flag is false
SERVER-43350 The server crashes when trying to join collections ($ lookup with pipeline).
Build and Packaging
SERVER-42911 Rebuild mongodb by building.md and failed to build due to ModuleNotFoundError: No module named 'Cheetah' with MSVC on windows
SERVER-44114 Don't use scons cache on Ubuntu 18.04 s390x
Internals
SERVER-37837 Possible for TransactionParticipant to never get cleaned up if no write happened
SERVER-38141 Incorrect usage of MONGO_CONFIG_HAS_SSL_SET_ECDH_AUTO prevents enabling of elliptic curve auto negotiation
SERVER-38493 Allow queryable storage engine to reuse connections between mongod and HTTP server
SERVER-39777 step down nodes with a high freeze timeout before validating them on shutdown
SERVER-41099 Fix incorrect error propagation from shards for explain command
SERVER-41102 Join threads in transport_layer_asio_test
SERVER-41248 Ensure ReplicaSetMonitor initializes its random state with truly random data
SERVER-41261 Use the oplog entry after the common point to calculate rollbackTimeLimitSecs
SERVER-41802 generate_resmoke_tasks doesn't apply max_sub_suites option
SERVER-41939 Connect to fastest LDAP server first
SERVER-41990 Burn_in should not average hook times for unique hooks
SERVER-42075 Add DSI module to perf.yml
SERVER-42107 LDAP conn pool should not block on the network in isHealthy() implementation
SERVER-42178 Disable Split Horizon HOSTALIAS testing on SLES
SERVER-42216 Ensure pin_getmore_cursor.js waits for server to finish killing cursor
SERVER-42476 Improve free monitoring tests
SERVER-42618 Disable legacy SCons cache pruning for all build variants
SERVER-42706 Test seeding secondary without sessions or transactions table
SERVER-42814 Remove informational message on overflow file size quota
SERVER-42866 Trigger a logical session cache refresh on all shards in the ShardedCluster test fixture before running test
SERVER-42953 ttl_repl_secondary_disabled.js should prevent elections
SERVER-43022 Allow compile to be run independently on rhel 62
SERVER-43186 Limit the number of tests added to a generated suite
SERVER-43200 Make auth/mongoURIAuth.js robust to slow commands
SERVER-43240 Add DSI and mongo-perf modules to MMAP build variants in v4.0 mongo
SERVER-43582 Do not attempt to authenticate ReplicaSet Monitor
SERVER-43634 Report different errors for missing scons and fail to import scons
WT-4502 Assertion checking hazard pointers on page discard is too strong
WT-4792 Add stat to track pages queued for eviction after LRU sorting
WT-4840 WT_CURSOR.modify must require explicit, snapshot-isolation transaction
WT-4869 Stop adding cache pressure when eviction is falling behind
WT-4881 Soften the restrictions on re-entering reconciliation
WT-4882 Improve checkpoint performance when there are large metadata pages
WT-4892 Improve statistics about forced eviction
WT-4893 Fix a race between internal page child-page eviction checks and cursors in the tree
WT-4895 Fix debug eviction mode so it chooses skew more randomly
WT-4898 Don't allow the eviction server to reconcile if it's busy
WT-4920 Add statistics tracking when eviction server is waiting for page transitions
WT-4956 Handle the case where 4 billion updates are made to a page without eviction
WT-4957 Revert part of a change about when pages are queued for urgent eviction
WT-5050 Assertion failure during urgent eviction of metadata page
WT-5074 Fix "make check" on exotic architectures
4.0.12 Changelog
Security
SERVER-41587 Improve SECBUFFER_EXTRA handling
Sharding
SERVER-36394 mongos should reset chunk size tracking information when autosplit = false or splitvector returns too few split points
Replication
SERVER-42467 initial_sync_test_fixture_test assumes wiredTiger
Query
SERVER-41829 findAndModify ignores filter expressions that are not objects
Operations
SERVER-41152 A space in the authenticationMechanisms string should produce at least a warning message
Build and Packaging
SERVER-42173 Add Ubuntu 14.04 to v4.0
SERVER-42603 Recent service file change may cause cyclic dependencies
Internals
SERVER-35114 Make it possible to adjust the period of active jobs in the PeriodicRunner
SERVER-38395 Python global logger is polluted when importing certain resmokelib modules
SERVER-39348 Cleanly release sessions in TLASIO unittest
SERVER-39928 Stop testing PyMongo with Python 2.6 in drivers-nightly
SERVER-39936 Use PeriodicRunner handles to simplify shutdown ordering
SERVER-40899 Disallow chaining in change_stream_update_lookup_read_concern.js
SERVER-42061 Validate decrypted payload in ESE
WT-4878 Disable random dhandle selection and fine tune eviction target calculations
WT-4913 Fix the Windows CRC32 on blocks that aren't 8B aligned and/or multiples of 8B
4.0.11 Changelog
Security
SERVER-41069 Ability to disable authorization via x509 extensions
SERVER-41441 Upgrade static OpenSSL to 1.1.1c
Sharding
SERVER-26531 jumbo flag in chunk can be cleared when the shard that owns it donates a chunk
SERVER-36004 SessionUpdateTracker should ignore no-op entries for pre/post image oplogs
SERVER-36443 Long-running queries should not cause a build-up of unused ChunkManager objects
SERVER-36469 shard_kill_and_pooling isn't querying the shard it's supposed to
SERVER-38457 Actually fix race condition in retryable writes test
SERVER-39756 Sharding a very large collection can result in a long stall of writes against this collection
SERVER-40346 Write shardCollection initial chunks with BatchWriter
SERVER-40535 Possibility to get a non-existent key if using ReadConcern level:local when reading signing keys in ReplicaSet
SERVER-41575 secondary_shard_versioning.js should not set the shard secondaries votes to 0
SERVER-41859 logical_time_metadata.js shouldn't assume lastApplied opTime equals $clusterTime
SERVER-41866 Reverse mutex acquisition order in CatalogCache::_scheduleDatabaseRefresh
SERVER-41867 CatalogCache::_scheduleDatabaseRefresh/_scheduleCollectionRefresh can try to grab _mutex it already owns
SERVER-41869 Reverse mutex acquisition order in CatalogCache::_scheduleCollectionRefresh
SERVER-42024 shards_and_config_return_last_committed_optime.js shouldn't assume opTime in response equals opTime in metadata
Replication
SERVER-37065 Report ismaster:false in isMaster command response immediately upon learning of a new term
SERVER-38659 Race condition in IsMasterIsFalseDuringStepdown unittest
SERVER-40248 OplogEntry's getOperationToApply() returns incorrect field for updates
SERVER-40336 ReplicationCoordinatorImpl::_random isn't robust to replica set members being started at the same time
SERVER-41036 Make ReadWriteAbility::_canAcceptNonLocalWrites AtomicWord<bool> to prevent torn reads.
SERVER-41342 read_committed_stale_history.js must perform continuous writes to ensure majority commit point propagates to secondary
SERVER-41497 Create IDL types for ElectionMetrics, ElectionCandidateMetrics and ElectionParticipant Metrics
SERVER-41498 Create ReplicationMetrics class
SERVER-42055 Only acquire a collection IX lock to write the lastVote document
Query
SERVER-40134 Distinct command against a view can return incorrect results when the distinct path is multikey
SERVER-40869 $subtract with date can cause undefined behavior
SERVER-41065 Make agg evaluate() thread safe by passing 'Variables' as a parameter
SERVER-42079 all non-primary-started index builds should be labeled backgroundSecondary
Aggregation
SERVER-40383 dateFromParts does not overflow correctly if isoWeek smaller than 1
SERVER-41785 Improve robustness of change_streams_resume_same_clustertime_different_uuid.js
SERVER-42232 Adding a new shard renders all preceding resume tokens invalid
Storage
SERVER-41351 Improve error message from failure to obtain lock for storage stats collection
SERVER-41533 Remove unnecessary IndexConsistency::_classMutex
SERVER-41534 Reuse KeyString in RecordStoreValidateAdaptor
SERVER-41535 Use vector instead of map for IndexConsistency::_indexesInfo
SERVER-41536 Use vector instead of map for IndexConsistency hash buckets
SERVER-41537 Use 64K hash buckets instead of 4M for index validation
SERVER-41538 Remove indirection through indexNumber in IndexConsistency
SERVER-41539 Cache key ordering in IndexInfo
SERVER-41540 Fix _indexNsResultsMap usage
SERVER-41541 Put a KeyString in IndexInfo for the RecordStoreValidateAdaptor
WiredTiger
SERVER-41913 Avoid in-place modify operations for logged collections
Operations
SERVER-36099 FTDC for mongos is unworkably large for large installations
SERVER-41632 db.collection.getShardDistribution() shows NaN
Build and Packaging
SERVER-36043 systemd unit for mongod starts before multi.user target
SERVER-39465 Update master android builds to r19 NDK
SERVER-40133 Create Markdown description of vendored third party libraries
SERVER-40563 Our init scripts check /proc/[pid]/stat should validate that
(${procname})
is the process' command name.SERVER-41039 Android and java multiarch builders cannot import yaml during config expansion
SERVER-41302 Lift restriction on publishing embedded SDKs from the 4.2 branch
SERVER-41424 scons should fail early if invoked with wrong Python interpreter
SERVER-41443 Update Enterprise License
SERVER-41568 Update third party inclusions for June 6th 2019
SERVER-42233 Bump Windows package dependencies
Internals
SERVER-26626 In external_auth_WT JSTests, ensure that Saslauthd has fully started before continuing test
SERVER-33589 Create an initial sync fuzzer suite
SERVER-35067 Blacklist explain2.js from retryable writes jscore stepdown suite
SERVER-37984 Upgrade yaml-cpp >= 0.6.0
SERVER-39480 Log network failure status in DBClientConnection
SERVER-39642 Decrement egress counter when scoped connection not returned to the pool
SERVER-40052 Shutdown in mongos can trigger BatchWriteOp invariant
SERVER-40156 Initial implementation of Split Horizon
SERVER-40295 Add details to stage_builder.cpp invariant message
SERVER-40643 Add tests for
replSetConfig
andreplSetInitiate
with Split HorizonSERVER-40645 Add tests for SNI/TLS behavior of Split Horizon
SERVER-40738 Don't try to upload evergreen tarball when doing Android mobile builds
SERVER-40923 Remove npm test command from "run jstestfuzz" Evergreen function
SERVER-40924 Add Evergreen task to sanity check fuzzer can parse JavaScript tests
SERVER-41004 killSessions command can return CursorNotFound error for successful kill
SERVER-41013 Make lock_stats.js test more resilient against unset stats
SERVER-41016 Calculate deltas for updates to large documents
SERVER-41047 errnoWithDescription always returns "Unknown error" on Linux
SERVER-41062 Always return TransactionTooLarge rather than BSONObjectTooLarge when transaction is too large to fit in a single applyOps
SERVER-41075 Remove 'mongo/repl/replication_coordinator.h' from op-context inclusion path
SERVER-41096 ContinuousStepdown thread and resmoke runner do not synchronize properly on the "stepdown permitted file" and "stepping down file"
SERVER-41131 Add StrongWeakFinishLine
SERVER-41148 FTDC is calling boost::filesystem without passing an error_code parameter
SERVER-41164 Change Stream pipeline regex matches wrong oplog docs when using '|' pipe in db name
SERVER-41169 Most powercycle testing for Linux was removed from Evergreen
SERVER-41184 Add metrics to indicate the amount of sharded updates done with only _id in query
SERVER-41349 Add a log statement for slow dns resolution
SERVER-41361 Do not read at lastApplied while already holding the PBWM lock on secondaries
SERVER-41401 patch_files.txt doesn't distinguish between enterprise and community files
SERVER-41432 Create failpoint which when enabled makes $expr evaluate to false rather than an error when an invalid expression is encountered
SERVER-41442 Fix second race in umask.js
SERVER-41546 SysV init scripts should verify PIDfile exists instead of failing
SERVER-41680 Propagate ${branch_name} Evergreen expansion to fuzzer invocation
SERVER-41702 Copy Collection NamespaceString before yielding locks in AutoGetCollectionForRead
SERVER-41753 Fix indexc.js to not depend on the clock always moving forward
SERVER-41789 sys-perf: Use bootstrap.overrides in bootstrap.yml config file
SERVER-41828 Ensure LDAP conn pool prefers ldap servers listed first
SERVER-41833 Update README license text
SERVER-41862 Make generated file for split resmoke tasks optional
SERVER-41897 Use assert.sameMembers to compare two sets in jstests/ssl/libs/ssl_x509_role_auth.js
SERVER-41967 Symlink /data to Z instead of C
SERVER-42002 JSTests for regex characters in db/coll names should abide by system differences
SERVER-42195 Stepdown suites fail with Python exception when run with --repeat >1
SERVER-42228 LoggerRuntimeConfigError exceptions can lead to background dbhash thread running until Evergreen task times out
WT-4477 Add eviction debug mode and extra checks
WT-4690 Make sure eviction does not split during checkpoints
WT-4706 Add a statistic to track the lookaside table size
WT-4712 Add debug log op record for non-logged tables
WT-4723 Restructure the reconciliation code
WT-4760 Checkpoint should not read past a stable update
WT-4776 Modify operations should be equivalent to updates
WT-4803 Implement file_max configuration for Cache Overflow mechanism
WT-4817 heap-buffer-overflow failure in timestamp_abort
WT-4823 Add check for uninitialised lookaside resources
WT-4827 Apply commit timestamps when a truncated page is read
WT-4848 Fix perf regression when calculating differences
4.0.10 Changelog
Security
SERVER-38217 Consider recording failed attempts to kill cursors in the audit log
SERVER-39864 Move principal name extraction to error handler in SASL Start
SERVER-40226 Upgrade static OpenSSL to 1.1.1b
SERVER-40393 Disable SSL_MODE_RELEASE_BUFFERS in ASIO
SERVER-40817 Handle createIndexes on roles collection in RoleGraphUpdate
Sharding
SERVER-36355 Improve error message when shard key not present in all documents
SERVER-36457 mongos_rs_shard_failure_tolerance.js test should assert that the movePrimary command succeeds
SERVER-39420 Remove in-memory boolean to indicate config.server.sessions collection set up
SERVER-40318 Condition variable wait in NamespaceSerializer::lock is not exception safe
SERVER-40346 Write shardCollection initial chunks with BatchWriter
Replication
SERVER-35636 Renaming collection for applyOps needs to check completeness of target namespace
SERVER-39221 Test rollback after enableMajorityReadConcern upgrade/downgrade
SERVER-39672 ReadConcern level in multi-statement transactions defaults to "snapshot"
SERVER-39831 Never update commit point beyond last applied if learned from sync source
SERVER-40068 Unblacklist kill_sessions_kills_transaction.js from replica_sets_jscore_passthrough.yml
SERVER-40329 Log all transactions at TXN verbosity levels >= 1
SERVER-40335 Don't wait for election handoff in ReplSetTest.stopSet()
SERVER-40628 Initial sync could fail under replsetprio1.js settings
SERVER-40788 Improve logging around replication catchup
SERVER-40839 Add tests for empty unprepared transactions
SERVER-40855 run_check_repl_dbhash_background.js with majority read concern false must allow for a missing majority op time
SERVER-40976 rollback_after_enabling_majority_reads.js should not run on mmapv1
SERVER-41006 Make replbatchlimitbytes configurable
SERVER-41081 do_not_advance_commit_point_beyond_last_applied_term.js must wait for Node E to reach stopReplProducerOnDocument failpoint
Query
SERVER-40618 Remove removec.js from causally consistent jscore passthrough
Storage
SERVER-30356 Improve error reporting for validation
SERVER-32709 Mobile SE: Index creation takes a long time
SERVER-40786 Improve error message in IndexCatalog::dropAllIndexes()
SERVER-41213 Unique background index builds may produce inconsistent keys
Operations
SERVER-34621 Log if client attempts renegotiation
SERVER-38625 Improve shell error handling when Atlas user has not configured IP Whitelisting
SERVER-38867 "show collections" no longer lists system.* collections
SERVER-39820 Add the client IP address to the successful authentication log message
SERVER-40112 db.disableFreeMonitoring() returns "not master" on secondary even after rs.slaveOk()
SERVER-40423 Misleading error message when 'count' is run as the first command in a transaction
SERVER-40866 Use JSON.stringify() to serialize string in tojson()
Build and Packaging
SERVER-37765 Platform Support: Remove Ubuntu 14.04
SERVER-39025 Windows MSI unattended installation missing mongod.exe with ADDLOCAL
SERVER-40242 Update banner inclusions for vendored tools
SERVER-40491 Update Debian 8 image for package test
SERVER-41038 The results of git describe for MONGO_VERSION vary by git version
Internals
SERVER-39869 System-Performance: Enable authentication in all tasks
SERVER-40166 Force BG clock now == Date_t::lastNow
SERVER-40246 Create evergreen task for cursor manager sys perf workload
SERVER-40344 Upgrade ASAN builders to Ubuntu 18.04
SERVER-40514 Race between BufferedHandler.close() and BufferedHandler.flush() leads to resmoke.py hanging with --log=buildlogger
SERVER-40553 Filter unauthorized views in listCollections
SERVER-40654 Do not override timeouts for generated tasks on PPC
SERVER-40704 Have better task timeouts when dynamically setting the minimum
SERVER-40720 Improve watchdog fuse test reliability
SERVER-40758 Increase the amount of memory available for logical_session_cache_replication* tasks
SERVER-40840 Disable tools testing in ssl_cert_password.js
SERVER-40889 free_monitoring tests should use a virtualenv
SERVER-40922 Add npm install command to "run jstestfuzz" Evergreen function
SERVER-40932 Increase timeout for shutting down the ServiceExecutor
SERVER-41088 Propagate Evergreen order field to Cedar for system perf
SERVER-41103 Fix fuzzer task invocations
TOOLS-2068 mongodump oplog delay
TOOLS-2290 mongorestore should not treat % in collection names as URL escape character
WT-4352 Resolve birthmarks during eviction in more cases
WT-4631 Always clear the read timestamp for transactions
WT-4687 Querying all_committed shouldn't get timestamp zero
WT-4693 WT_CONNECTION::reconfigure should not require quiescence when downgraded
WT-4750 Sweep can remove active lookaside records when files are closed and re-opened
WT-4759 Save a copy when an old overflow value is discarded
WT-4768 Inconsistent data with lookaside eviction followed by sweep
WT-4769 Don't discard active history for empty pages
WT-4794 Mark lookaside history resolved in all paths
WT-4796 Enhance diagnostics that track ref state transitions
4.0.9 Changelog
Security
SERVER-38945 SSL performance regression
Sharding
SERVER-40333 Only clone collection options once for each shard on shard collection
Replication
SERVER-39278 Wait for rollback to finish before ending session in transient_txn_error_labels_with_write_concern.js
SERVER-39672 ReadConcern level in multi-statement transactions defaults to "snapshot"
SERVER-40039 Increase assert.soon timeout in initial_sync_invalid_index_spec.js
SERVER-40298 Track transaction size on 4.0
Query
SERVER-38949 Incorrect index bounds for {$ne: ["String"]} query
SERVER-40391 Remove low value explain2.js test
Storage
SERVER-16571 Use Actual Memory Constraint vs. Total System Memory When They Differ
SERVER-39026 Use correct type for retrieving WiredTiger statistics
SERVER-39654 Storage statistics not logged for a slow transaction
SERVER-40390 Blacklist skip_repairing_fcv.js from running on mmapv1 on 4.0
Operations
SERVER-40131 Incorrect format string in Windows stacktrace generator.
SERVER-40259 Include third party notices for ASIO and variant
Build and Packaging
SERVER-36622 Package tests fail for newer Ubuntu
Internals
SERVER-34260 Ability to reuse a single TCP connection from mongod to the LDAP server
SERVER-38239 Define and Implement getOperationStatistics of storage interface
SERVER-38240 Extend OpDebug object to support storage statistics
SERVER-38243 Test session storage statistics are part of slow operation report
SERVER-38649 Add AlarmScheduler and AlarmRunner for general purpose alarms
SERVER-38984 Attach IDs to users
SERVER-39061 Fix the wt_operation_stats test to wait for the operation log to appear
SERVER-39178 Negotiate SCRAM mechanism in MongoURI::connect()
SERVER-39361 Synchronise collecting storage engine stats with shutdown
SERVER-39488 Test does not see the storage statistics in the profiled output .
SERVER-39764 Negation of $in with embedded array can incorrectly plan from the cache, triggering invariant
SERVER-39869 System-Performance: Enable authentication in all tasks
SERVER-39934 CurOp::completeAndLogOperation should not hang waiting for global lock
SERVER-40341 Thread SSL connection mode through ConnectionPool interface
WT-4324 Ensure checkpoints rewrite pages with data in the future
WT-4554 Enhance WT salvage to handle the case of corrupted WiredTiger.turtle
WT-4619 Coverity 111398: leaked memory
4.0.8 Changelog
Security
SERVER-39217 TLS intermediate CA certificate not working with macOS and 4.0.5
Sharding
SERVER-35219 Regain MongoDB balancer performance with sessions
Replication
SERVER-37255 replSetReconfig with concurrent election can trigger invariant
SERVER-38994 Step down on SIGTERM
SERVER-40194 Revert SERVER-33248 on 4.0
SERVER-40355 rs.config that contains an _id greater than the number of nodes will crash
Query
SERVER-39903 notablescan parameter should be ignored for internally used namespaces
Storage
SERVER-40024 Rename collection on a secondary can set the collection minimumVisibleSnapshot timestamp backwards in time after a background index build's ghost commit cluster time timestamp
Operations
SERVER-37722 Quiet mode does not suppress connection end events
Build and Packaging
SERVER-35628 Failed runtime links to do not result in failed tests for android emulators
Tools
TOOLS-2229 Mongofiles deletes chunks of existing file when failing to put_id with existing _id
Internals
SERVER-34286 noPassthrough/currentop_query.js is failing on Amazon Linux 2
SERVER-36750 blacklist memory.js on ppc64le in memory variants
SERVER-37389 Give different messages for different connection failure reasons
SERVER-38644 Guard against ephemeral files disappearing during umask test
SERVER-39580 [4.0] Skip repairing the FCV document if the major version is too low
SERVER-40154 change_streams_resume_at_same_clustertime.js should not assume change order
SERVER-40233 Increase transactionLifetimeLimitSeconds from 3 to 24 hours
SERVER-40305 Add diagnostic logging to max_time_ms.js
4.0.7 Changelog
Security
SERVER-36606 Remove size limits on BSON audit events
SERVER-39202 Improve deterministic calculation of key container names
SERVER-39571 mongod cannot verify certificates from the CNG provider
Sharding
SERVER-36901 sh.status() "Last reported error:" is actually 5th Latest error message
SERVER-36958 Parts of the
_configsvrShardCollection
command do not retry on network errorsSERVER-37591 MigrationSourceManager is not exception safe before
startClone
completesSERVER-38192 Ignore duplicate key error from refreshLogicalSessionCacheNow
SERVER-38205 Optimize splitVector for the jumbo-chunk case
SERVER-38387 agg_out.js concurrency workload always fails to shard the output collection
SERVER-39203 failcommand_ignores_internal.js fails against mongod 3.6
SERVER-39847 Migrating session info can trigger fassert when destination shard has transaction history truncated by oplog
SERVER-40010 Shard secondaries with 4.0 binary and 3.6 FCV are calling
_flushDatabaseCacheUpdates
Replication
SERVER-35663 Replication recovery does not update the logical clock
SERVER-37179 Wait for specified write concern whenever commitTransaction returns a NoSuchTransaction error
SERVER-37274 commands_that_accept_wc tests can give secondaries priority zero
SERVER-37569 prohibit MapReduce on sessions with txnNumbers
SERVER-37846 writeConcern can be satisfied with an arbiter if the write was committed
SERVER-38297 Killing session on a secondary currently applying prepare oplog entry can fassert
SERVER-38354 Allow shutdown error when reading last applied optime on startup
SERVER-38722 CollectionCloner should handle QueryPlanKilled on collection drop
SERVER-39215 Fix aggregation_currentop.js such that we don't compare timestamps generated from 2 different sources (mozjs & server).
SERVER-39286 server_write_concern_metrics.js must use requires_journaling tag
SERVER-39490 opWriteConcernCounters can cause undefined behavior due to overflow
SERVER-39641 Blacklist max_time_ms.js from read concern linearizable passthrough
Query
SERVER-13779 Allow $not to be applied to $regex (currently only /regex/ syntax is allowed)
SERVER-36910 Reduce severity or remove log message for PlanExecutor::DEAD error during find
SERVER-38764 External sorter should use 64-bit integers for file offsets
SERVER-39210 Add debug logging to change_streams/shell_helper.js
SERVER-39472 Backport changes to apply_ops_concurrent_non_atomic.js to account for HMAC key inserts in 3.6 and 4.0.
SERVER-39650 Ensure internal options cannot be specified in a raw aggregate command sent to mongos
SERVER-39771 TextMatchExpression crashes instead of serializing in some cases
Aggregation
SERVER-31098 Wrong ns in system.profile for aggregation query
SERVER-35740 Report high-water-mark resume token with each (possibly empty) change stream batch
SERVER-38408 Return postBatchResumeToken from all mongoD change streams
SERVER-38410 Allow ARM to consume postBatchResumeToken for merging
SERVER-38411 Propagate postBatchResumeToken through mongoS to client
SERVER-38412 Allow resuming from a high-water-mark resume token
SERVER-38413 Always set an initial postBatchResumeToken
SERVER-38414 Upgrade/Downgrade testing for change stream high water mark
SERVER-38942 Improve robustness of postBatchResumeToken integration tests
SERVER-38975 Single-collection high water marks omit UUID on shards where the collection does not exist
SERVER-39166 $graphLookup should force a pipeline to split in sharded cluster
SERVER-39322 Backport timelib fix for incorrect snprintf invocation with static buffer
SERVER-39394 Views collation check should traverse through nested $lookup pipelines
SERVER-39410 Re-enable batching in DSCursor for change stream cursors
SERVER-39487 Aggregation operator $sqrt output for NumberDecimal is the same as $exp
SERVER-39612 Validate fields in $geoNear
SERVER-40094 Do not prematurely reject resume attempt in DSShardCheckResumability
JavaScript
SERVER-39481 Remove unused C++ injected JS constructors
Storage
SERVER-17010 Reduce file handle usage in File based Sorter
SERVER-35449 Return the oldest read timestamp used by any open transaction
SERVER-35732 Hyphenated database names do not work with dbStats.fsUsedSize / TotalSize
SERVER-38555 cappedTruncateAfter must not set oldest timestamp during startup recovery when enableMajorityReadConcern=false
SERVER-38745 MigrationDestinationManager assigns incorrect timestamps while building multiple indexes
SERVER-38801 Cope with large BSON blobs in queryable's
listDirectory
call.SERVER-38833 A failure to timestamp a storage transaction requires restarting the transaction
SERVER-39106 GlobalLock acquisition should throw when ticket acquisition times out if there is a max lock timeout and no deadline
SERVER-39259 Mobile SE: Adjust SQLite Pragmas for Improved Performance
SERVER-39719 Ensure that a node performing an initial sync from a secondary with a in-progress index build creates the index before initial sync is done
SERVER-39723 Change listIndexes command behavior to show in-progress index builds
SERVER-39773 decrease number of updates in rollback_wt_cache_full.js
SERVER-39871 Make catalog_raii_test more resistant to clock issues on Windows
SERVER-39922 Fix lock stats suboperation tests for mobile
Operations
SERVER-34422 Expose metrics on idle versus active client threads
SERVER-37155 Improve the LDAP server logging
SERVER-38038 mongo shell should be linked with ErrorExtraInfo derivatives
SERVER-38530 Add getResumeToken shell helper
SERVER-39093 Cannot use TLS with readPreference={mode: "secondary"} without specifying --ssl to mongo shell
Build and Packaging
SERVER-33958 When using thin archives the --cache=nolinked mode should push thin archives to the cache
SERVER-35356 Add release process builder for embedded SDKs
SERVER-35737 install_compass fails on MacOS
SERVER-39354 Remove SCons cache pruning from prior branches
SERVER-39483 Stripped binaries and .debug files should not be cached
Tools
TOOLS-2030 mongodump does not dump system.js collections
TOOLS-2109 Build Tools with Go 1.11
TOOLS-2166 mongoimport --uri logs incorrect connected hosts
Internals
SERVER-35138 service_state_machine.cpp should log a backtrace if there's an uncaught exception
SERVER-35551 Mongobridge nodes don't remember their network partition configuration after a restart
SERVER-36231 Mongos write path doesn't look for retryable write concern errors
SERVER-37183 BSONElement::safeNumberLong is not safe
SERVER-37382 printShardingStatus.js races with ShardingUptimeReporter thread
SERVER-37620 Improve watchdog_test reliability
SERVER-38319 DBClientRS should propagate URI options through all paths
SERVER-38538 Improve thread safety of PeriodicRunnerImpl
SERVER-38674 --ssl=off builds emit a scons warning
SERVER-38697 Powercycle kill by PID might try to kill the wrong process
SERVER-38725 Maven central release automation cannot close sonatype repository (401 unauthorized)
SERVER-38746 Provide reason for transaction abort
SERVER-38748 Background indexes created through applyOps should run on the command thread
SERVER-38789 Accept connection failure on Windows in ssl_alert_reporting.js
SERVER-38816 Use generate.tasks for required tasks over target runtime
SERVER-38837 Make periodic_runner_impl_test more lenient in OnePausableJobResumesCorrectly
SERVER-38933 currentOp is not resilient to drop shard
SERVER-38954 Increase query execution time for the test case in max_time_ms.js that expects it to hit the time limit
SERVER-39009 Make bulldlogger credentials location configurable via environment variable
SERVER-39014 Incorrect error reported while re-installing with the Windows MSI
SERVER-39019 $elemMatch $ne serialization is incorrect, doesn't roundtrip
SERVER-39031 Make SCons default --jobs to CPU count
SERVER-39056 Further refine readWriteAnyDatabase
SERVER-39058 Synchronize user set modification in AuthorizationSession with Client
SERVER-39127 Use generate.tasks for already converted tasks on all variants
SERVER-39128 Avoid double-authentication during connect from mongo shell
SERVER-39138 New test suites do not handle excludes properly when dividing suites
SERVER-39212 waitForSecondaries in background dbhash check must wait for lastApplied to reach clusterTime when enableMajorityReadConcern=false
SERVER-39232 Allow commands that do not require auth to refresh sessions
SERVER-39284 Better handle timeouts for generated tasks with repeated execution
SERVER-39303 Coverity analysis defect 105263: Dereference after null check
SERVER-39386 Specifically use the version of the android NDK that we want to use
SERVER-39421 Fix opCtx and baton waits
SERVER-39564 burn_in_tests.py doesn't run tests in the configuration for
*_gen
Evergreen tasksSERVER-39590 improve port_options.js logfile polling
SERVER-39686 Clean up cloud_nightly project file
SERVER-39746 System-Performance: Write project in runtime.yml
SERVER-39779 Don't override timeouts if not all test have history
SERVER-39822 Improve watchdog_test.exe test reliability
SERVER-39823 Free Monitoring may ignore re-register requests on secondaries
SERVER-39830 Race in PeriodicRunnerImpl between start() and stop()
SERVER-39900 change_streams_resume_at_same_clustertime.js should not assume same that multi-update across shards are performed at the same clusterTime
SERVER-39946 Handle splitting tasks with only filtered test history
SERVER-40034 Set setup_group_can_fail_task to true for compile-related task groups
SERVER-40076 Tag JavaScript tests with the reason they're unable to run in Atlas
SERVER-40195 Pin all Gradle dependencies
TOOLS-1906 Ignore mongorestore error "x509 certificate routines:X509_STORE_add_cert:cert already in hash table"
TOOLS-2158 mongodump failing on Windows with "error opening system CA store: Access is denied."
TOOLS-2167 Add CGO flags for building on Windows
TOOLS-2168 Add CGO flags for building on MacOS
TOOLS-2210 Build with tools with Address Space Layout Randomised (ASLR) flags enabled
WT-4447 Add prototype implementation allowing limiting of IO per subsystem
WT-4483 Improve caching of small updates to large values
WT-4518 Give applications a chance to handle panic before API panic returns
WT-4522 Update WiredTiger copyrights to 2019
WT-4528 Retry Windows functions on access denied
WT-4532 Fix null pointer access to WT_DATA_HANDLE in __wt_page_in_func
WT-4547 Consolidate capacity and block manager bytes written
WT-4562 Coverity: possible divide by zero conn_capacity:434
WT-4576 Coverity warning in conn_capacity.c
WT-4615 Sync backup file before returning backup cursor
4.0.6 Changelog
Security
SERVER-37565 mongod continuously restarting after upgrade to 4.0.2
SERVER-38293 Make listDatabases understand collection privileges
Sharding
SERVER-9043 Link
flushRouterConfig
on the config server and shardsSERVER-31156 Admin command to update the chunk metadata for only one collection
SERVER-36863 query_config.js assumes that config.mongos is always present
SERVER-38050 The range deleter doesn't validate it is still operating on the same collection after the deletion loop
SERVER-38062 Add assert.commandWorked() to commands in read_pref_cmd.js
SERVER-38196 Coverity analysis defect 105128: Unchecked return value
SERVER-38472 A config server can return early for a shardCollection command even if the shard hasn't finished its own shardCollection command
SERVER-38641 clone_catalog_data.js should call awaitLastOpCommitted on CSRS before calling _cloneCatalogData directly against shard
SERVER-38751 _migrateClone and _transferMods incorrectly labeled as idempotent in MigrationDestinationManager
SERVER-39030 Wrong info logged by splitVector
SERVER-39180 Wrong initial chunk owner shard can be selected when sharding non-empty collection with pre-created zones
SERVER-39234 Sharding an empty collection in mixed-shard version configurations may leave all chunks on the primary shard
Replication
SERVER-32146 Log slow oplog entry application
SERVER-34943 failCommand failpoint should ignore commands from replica set members
SERVER-35608 Invariant that term from lastAppliedOptime is never greater than our current term
SERVER-37189 transactions.currentActive has a value of -1
SERVER-37910 Create new serverStatus metric for number of operations applied on a secondary that's incremented at batch boundaries
SERVER-37915 Replication doesn't update opsCounterRepl command on secondaries
SERVER-38052 ReplBatcher thread must handle exceptions
SERVER-38059 Transactions write conflicts tests should clean up any transactions on failure
SERVER-38200 Fix ./jstests/replsets/initial_sync_oplog_hole.js to prevent using stale heartbeat info in the test.
SERVER-38476 Increase timeout for clean_shutdown_oplog_state.js, again
SERVER-38647 backup_restore_rolling.js can fail due to stepdown
SERVER-38740 Remove wait for drop to have pending X lock in abort_transaction_thread_does_not_block_on_locks.js
SERVER-38998 Create serverStatus metrics for readConcern and writeConcern
SERVER-39142 ServerWriteConcernMetrics must lock _mutex before modifying members
SERVER-39267 Guard opWriteConcernCounters behind flag
Query
SERVER-35455 QueryPlannerAccess should hold owned pointers by unique_ptr rather than raw pointer
SERVER-38275 Handle explains without namespaces
SERVER-38601 Add regression test for memory leak during planning
Write Operations
SERVER-37284 ndeleted:0 is logged/profiled when the number of deleted documents is not known
Aggregation
SERVER-39109 mongod crash: Invariant failure !_exec src/mongo/db/pipeline/document_source_cursor.cpp 295
Storage
SERVER-37484 Only alter table logging settings on startup and not collection creation
SERVER-37911 CreateIndex via applyOps should notify opObserver in the WUOW of index commit
SERVER-38434 queryableBackupMode and wiredTigerEngineConfigString flags are incompatible
SERVER-38498 decrease number of updates in rollback_wt_cache_full.js
SERVER-38779 Build a mechanism to periodically cleanup old sessions from session cache
SERVER-38869 Log more information in run_check_repl_dbhash_background.js
SERVER-38928 background dbhash test hook incorrectly relies on a primary's lastApplied being >= its secondary's lastApplied
Operations
SERVER-33469 Make syslog log lines consistent with mongod log lines
SERVER-38983 Differentiate UserNotFound from AuthenticationFailure in audit log
Build and Packaging
SERVER-35936 MongoDB Community Windows installer fails to install Compass
SERVER-37775 Platform Support: Add Community RHEL7 (zSeries)
SERVER-37777 Platform Support: Add Community SLES12 (zSeries)
SERVER-37778 Platform Support: Add Community & Enterprise Ubuntu 18.04 (zSeries)
SERVER-38416 Upgrade static OpenSSL to 1.1.1a
SERVER-38726 Add stable toolchain variables files
SERVER-39176 Repo config for RHEL7 s390x is missing
Internals
SERVER-31755 Raise intermediate $lookup document size to 100MB, and make it configurable
SERVER-34394 Server Option to Explicitly Prevent SNMP Usage
SERVER-35393 Go Driver Unit Tests receive error code 9001 when doing a large insert many
SERVER-35620 downloaded file integrity: use shasum instead of python script
SERVER-36740 Sometimes crashes on windows don't provide a backtrace
SERVER-36774 Allow shell assertion functions to take objects for the 'message' argument
SERVER-36817 replSetFreeze command run by stepdown thread may fail when server is already primary
SERVER-37078 Use awaitSecondaryNodes() instead of waitForState() to confirm a node is a secondary in repair_invalidates_replica_set_nodes.js
SERVER-37143 Retry on Interrupted errors in the background DB hash hook
SERVER-37240 Enable dbhash background thread for enableMajorityReadConcern:false variant
SERVER-37241 Add testing to verify proper expiration of sessions in the sessions collection
SERVER-37359 Update the test lifecycle script to use the new Evergreen test stats endpoint
SERVER-37428 Sys-perf: linux builds using enterprise bits
SERVER-37490 Increase the ConnectTimeout for powercycle
SERVER-37562 Reduce all IX locks to IS locks in SessionsCollectionRS
SERVER-38109 Update generate_resmoke_suite.py to use cached history endpoint
SERVER-38110 Generate resmoke config YAML for a sub-suite
SERVER-38112 Add "generate resmoke sub-suites" in etc/evergreen.yml
SERVER-38113 Generate evergreen config for generated sub-suites
SERVER-38114 Update evergreen.yml to use generate tasks for already split tasks
SERVER-38115 Consolidate setting of resmoke.py --job to a python script
SERVER-38177 Repair with bind_ip results in a null pointer dereference
SERVER-38182 run_check_repl_dbhash_background aborts all transactions after an error even if they've already successfully committed
SERVER-38415 checkLog.containsWithCount does not reset count before each loop of assert.soon
SERVER-38445 Date_t and Duration addition can overflow
SERVER-38509 Handle degraded mode for test history in generate_resmoke_suites
SERVER-38616 LDAPArrayIterator behaves incorrectly when initialized with an empty array
SERVER-38639 Install psutil module in "run tests" in etc/evergreen.yml [v4.0]
SERVER-38710 Support dependencies when generating evergreen tasks
SERVER-38748 Background indexes created through applyOps should run on the command thread
SERVER-38818 Better handle dependencies between generated tasks
SERVER-38887 Mongo.getDBs() does not correctly inspect privileges
SERVER-38946 Properly handle new excludes in generated tests
SERVER-38990 Exclude tests that require mmapv1 for s390x variants
SERVER-39013 Add gdb pretty printers for absl::flat_hash_map/set
WT-4192 Remove WiredTiger raw compression support
WT-4280 Add debugging to know which session has a hazard pointer
WT-4319 Improvements to csuite tests
WT-4331 Further extend max wait time for test_bug019.py
WT-4383 Update session statistics to reflect the operation statistics.
WT-4384 Add documentation about session statistics cursor
WT-4393 Document cursor behaviour for read committed isolation
WT-4410 Split 'unit-test' task to reduce Evergreen Ubuntu build variant runtime
WT-4417 Make os_cache_max and os_cache_dirty_max reconfigurable
WT-4421 Add a way to calculate modify operations
WT-4430 Fix race between prepare and page instantiate with fast truncate
WT-4434 Modify zstd compression level from 3 to 6
WT-4438 Use more accurate statistics for cursor cache totals
WT-4442 Add the ability to duplicate a backup cursor
WT-4454 Auto-generate Evergreen configuration when adding new 'make check' or csuite tests
WT-4455 test_wt4156_metadata_salvage with HAVE_ATTACH fails on zSeries
WT-4457 Add a maximum of dirty system buffers for the logging subsystem
WT-4463 Reduce runtime for csuite handle locks testing
WT-4464 In debug output row-store internal page keys may not format correctly
WT-4469 Coverity #105148: redundant test
WT-4470 Minimize testing that requires TESTUTIL_ENABLE_LONG_TESTS
WT-4479 Remove schema lock wait assertion from the test
WT-4480 Fix duplicate backup cursor and archiving check
WT-4481 Evergreen script cleanups
WT-4482 lint
4.0.5 Changelog
Security
SERVER-35212 URI connection does not default to admin database when no authSource is specified
SERVER-37687 Capture libldap ErrorString in bind failure
Sharding
SERVER-30714 Handle step down error in ReplicationCoordinatorExternalStateImpl::_shardingOnTransitionToPrimaryHook
SERVER-36349 Handle the ShardingOperationFailedStatus in the OperationShardingState destructor when the OperationContext is not created in a ServiceEntryPoint
SERVER-36965 Ensure setUp writes in
safe_secondary_reads_single_migration_suspend_range_deletion.js
get propagated to the shard secondarySERVER-36966 Sharded map reduce may fail to clean up temporary output collection
SERVER-37051 ShardServerCatalogCacheLoader does not check the internal term after reading from the task queue
SERVER-37080 Implement tuneable batch size for chunk migrations
SERVER-37339 Sharding state is set to initialized on Grid before sharding components are fully initialized
SERVER-37354 Make _shardsvrShardCollection re-entrant
SERVER-37511 Logical session reaper and refresh threads should set up sessions collection immediately
SERVER-37616 Implement tuneable batch size for the rangedeleter
SERVER-37624 Sessions never expire when you change value of localLogicalSessionTimeoutMinutes
SERVER-37902 recovering_slaveok.js should assert all writes it makes succeed
SERVER-37918 Fast initial split algorithm produces corrupted routing info if passed unsorted zones list
SERVER-37932 Remove erroneous part of coll_epoch_test1.js that attempts to test something that shouldn't work, but due to a bug in the test, the test passes
SERVER-38371 Session catalog migration will skip later sessions if a different earlier session encounters new transaction
SERVER-38392 Remove assertion that we can't shard a non-empty collection associated with tags
Replication
SERVER-37317 Make sleepmillis more conservative in slow transaction logging unit tests
SERVER-37500 Blacklist geo_s2ordering from replica_sets_kill_primary_jscore_passthrough suite
SERVER-37557 Add startup warning about enableMajorityReadConcern and usage of arbiters
SERVER-37676 Implicit collection creation is allowed in aborted transactions
SERVER-37935 Remove read concern "majority" overrides for change streams test suites
SERVER-38024 initial_sync_oplog_hole test should be tagged as requiring document locking
Query
SERVER-36115 invalidated_cursors.js FSM workload should ensure killOp is sent to same node as currentOp
SERVER-37385 Change max_time_ms.js to tolerate 'Interrupted' error codes
SERVER-37838 stepDown during a getMore followed by an OP_KILL_CURSORS can crash the server
SERVER-38070 Infinite loop in aggregation expression
SERVER-38164 $or pushdown optimization does not correctly handle $not within an $elemMatch
Aggregation
SERVER-37027 [4.0 only] Adapt change stream resume token when a stream detects FCV changes
SERVER-37182 Different values when referencing whole object vs. a field of that object after $arrayToObject
SERVER-37200 $match stage following $listSessions not working against mongos
SERVER-37750 Optimized $sample stage does not yield
SERVER-37779 mongos does not correctly enforce that a change stream must be the first stage
SERVER-38223 change_fcv_during_change_stream.js requires majority read concern
SERVER-38332 change_fcv_during_change_stream.js requires transactions
Storage
SERVER-29825 Do not allow rename from unreplicated to replicated DB or vice-versa
SERVER-36873 ReplicationCoordinatorExternalStateImpl::shutdown() must not hold _threadMutex while waiting for _taskExecutor
SERVER-36968 Rebuild interrupted indexes before checking AuthZN index presence
SERVER-37313 FTDC collection blocked during foreground index build on secondary
SERVER-37408 Add afterClusterTime to initial sync collection scans
SERVER-37524 In-Memory Storage Engine With Storage Watchdog Crashes The Server
SERVER-37784 Repairing the size storer should not fassert
SERVER-37796 Always salvage WiredTiger metadata regardless of error code when starting with repair
SERVER-37862 Reduce update ops in initial_sync_wt_cache_full.js
SERVER-37930 Add test coverage for createIndexes inside nested applyOps
SERVER-37931 lock_stats_suboperation_logs.js should ignore noise lock stats
Operations
SERVER-35485 Mongo Shell does not accept compressors connection string argument
SERVER-36262 mongo shell: allow users to show dbs (on <4.0 versions of the server) without the listDatabases privilege
SERVER-36272 Shell assertion failure with certain characters in the password
SERVER-36977 Initial mongod.log is created using umask vs mode 600
Build and Packaging
SERVER-35972 Run push tasks more often
SERVER-37598 Add a canary builder for GCC 8
SERVER-38049 embedded-android pom.xml should declare slf4j dependency as optional
SERVER-38078 WT SCons configure checks for fallocate and sync_file_range are broken
SERVER-38421 Requirement on cryptography should reflect what is in the toolchain
SERVER-38581 Create "is_release" compile expansion
Tools
TOOLS-1709 Set build version and git revision using -ldflags
TOOLS-2149 Configure build outside Evergreen
Internals
SERVER-34770 Retry on JavaScript execution interruptions in stepdown suites
SERVER-35062 Add TPCC to Sys Perf Configuration
SERVER-35250 save dbtest debug symbols in debug_symbols tar
SERVER-35768 gssapiServiceName URL parameter does not work
SERVER-35832 Correct flaws in Dagger evergreen config
SERVER-36060 Make unit tests build cleanly on clang-6
SERVER-36437 The dbstats command should lock the database in MODE_IS instead of MODE_S
SERVER-36626 Draw wait-for graph from left to right
SERVER-36805 Run tpcc on 3 node replset
SERVER-36998 compile_dbtest task isn't running against large distro on Enterprise Windows 2008R2 builder
SERVER-37472 Improve behavior if user downgrades to 4.0 binary without setting FCV to 4.0
SERVER-37526 IDLify listDatabases command
SERVER-37527 Broken logic in ServerMechanismBase class.
SERVER-37551 Add {authorizedDatabases:bool} param to {listDatabases} command.
SERVER-37628 Fix mongo_uri_test:InvalidTestCase construction
SERVER-37678 Update linter to enforce SSPL in header files
SERVER-37717 Race between Baton::notify() and Waitable::wait()
SERVER-37854 Coverity analysis defect 105094: Uninitialized scalar field
SERVER-37877 Enable sys-perf testing of auditing on v4.0
SERVER-37913 coll_epoch_test1.js does not wait for the config server to replicate after dropping collections.
SERVER-37941 specifying --bind_ip localhost results in error "address already in use" when IPv6 alias exists
SERVER-38055 Mongod servers started through the shell do not respect TestData.enableMajorityReadConcern
SERVER-38066 Shell utils should open files in binary mode
SERVER-38098 MongoDB's yaml-cpp is rejected by latest MSVC
SERVER-38111 Implement max_sub_suites in generate_resmoke_suite.py
SERVER-38116 Update fuzzer tasks to use generate.tasks
SERVER-38159 Blacklist umask nopassthrough test on mmapv1
SERVER-38178 Buffer Overflow in data_builder.h when using terminated StringDatas
SERVER-38281 TLS info message isn't captured into system log
SERVER-38303 Temporarily handle ipv6 failures due to s390x machine without ipv6 enabled
SERVER-38306 change 'multipath' to 'multiversion' in evergreen_gen_fuzzer_test
SERVER-38312 Unable to run jstestfuzz* tasks on variants with long names
SERVER-38452 Automate Maven Central releases for MongoDB embedded
TOOLS-1566 Should not include "ssl" tag for Linux 64 build
TOOLS-1742 import cycle between util and testutil
TOOLS-1996 Allow building tools from inside an ordinary GOPATH
TOOLS-2155 Set version/git-commit via ldflags in Evergreen and Server Evergreen
TOOLS-2157 Update server vendoring
WT-3756 Adjust pre-allocated file amount downward if we're not using them quickly enough
WT-4043 Take locks while dumping the cache to avoid crashes
WT-4159 Improve log preallocation algorithm
WT-4298 Fix workgen to retry on WT_ROLLBACK and clear ops after warmup
WT-4343 Unlock when sleeping to allow other log threads to make progress
WT-4345 Set corruption and return salvage on facing a missing log file
WT-4371 Workgen improvements to create a MongoDB-like workload
WT-4372 For throughput testing, create a standard metric to measure latency smoothness
WT-4376 Fix a bug where table index open can race
WT-4378 Create new auto functions and cursor for session level statistics
WT-4381 Reset session statistics as on WT_SESSION::reset()
WT-4385 Prepare-conflict during a cursor scan can return the wrong key
WT-4392 A large lint change
WT-4394 Reduce Evergreen Ubuntu build variant runtime by splitting up 'make check' tests
WT-4395 Seg fault walking corrupted log with log cursor
WT-4396 When retrying after prepare-conflict, cursor unable to find a valid update
WT-4399 Fix compression with workgen's wtperf emulation
WT-4400 Fix workgen use of PRIxxx macros, needed for old C++ compilers
WT-4401 workgen: wtperf emulation: sample_interval broken with integer values
WT-4402 Add rollback support and monitor JSON output in wtperf
WT-4403 Add statistic tracking accumulated dirty cache
WT-4405 Fix cursor next and prev for prepared transactions
WT-4409 Fix workgen throttling
WT-4411 Added connection statistic for current total of cached cursors
WT-4412 wtperf coverity fixes
WT-4418 Don't keep key/value memory buffers allocated for cached cursors
WT-4419 big-endian machines incorrectly configure little-endian crc32c support
WT-4422 Don't queue clean pages for urgent eviction
WT-4427 Make WiredTiger timestamps always on and 8 bytes
WT-4440 Force a copy of the stable timestamp for clarity
4.0.4 Changelog
Security
SERVER-37135 TLSVersionCounts needs to track and report TLS 1.3
Sharding
SERVER-29160 Sharding commonly uses write concern timeouts of 15 seconds and these are timing out in migration related operations and causing BFs
SERVER-31563 Reevaluate not_allowed_on_sharded_collection_cmd.js testing
SERVER-31892 moveChunk with
waitForDelete
doesn't wait for majority write concernSERVER-35323 sessionId matching ignores userId part of the lsid
SERVER-35763 lastWriteDate field can get out of sync between repl set nodes during migration
SERVER-36831 LogicalSessionCache on mongos does not correctly report active operations
SERVER-36850 Add a replication passthrough suite to detect errors in LogicalSessionsCache
SERVER-36959 _shardServerShardCollection should use afterOpTime when counting chunks on the config server
SERVER-37142 invariant failure during movePrimary during cleanup
SERVER-37330 Add sharded passthrough suites to detect errors in LogicalSessionCache
SERVER-37430 Destroy sharding task executors and AsyncRequestSenders after the PeriodicRunner is destroyed in mongod shutdown
SERVER-37496 The balancer shouldn't register a shutdown task after the process is multithreaded
SERVER-37578 Assert that a zone is associated with a shard before sharding the collection
SERVER-37657 Report the offending oplog entries if a batch contains non-increasing transaction numbers
SERVER-37918 Fast initial split algorithm produces corrupted routing info if passed unsorted zones list
Replication
SERVER-20845 re-add replSetReconfig to auditing suite
SERVER-36978 TaskRunner must ensure Client is initialized for thread before running tasks
SERVER-36979 Aborting a transaction must abort WUOW before releasing locks.
SERVER-37118 Coverity analysis defect 105000: Arguments in wrong order
SERVER-37227 Reintroduce enableMajorityReadConcern:false server parameter
SERVER-37514 Snapshot readConcern without atClusterTime should always be speculative
Query
SERVER-37058 Update with numeric field names inside an array can cause validation to fail
SERVER-37132 Negation of $in with regex can incorrectly plan from the cache, leading to missing query results
JavaScript
SERVER-30773 bsonWoCompare and bsonBinaryEqual should work with bsonelement types
SERVER-37126 Invoke runSafely for all external implscope methods
Storage
SERVER-26854 LockStats for sub-operations should not include time for previous sub ops
SERVER-36534 Don't acquire locks on oplog when writing oplog entries
SERVER-36883 support non-doc-locking storage engines in SERVER-36534
SERVER-37055 IndexBuildBlock::fail() should grab a lock
SERVER-37394 Invariant failure deadline != Date_t::max() or Invariant failure date.isFormattable()
SERVER-37618 Capture all the logs in lock_stats_suboperation_logs.js
SERVER-37662 Include backupCursor state in output of serverStatus
SERVER-37749 replSetResizeOplog command does not validate argument
Build and Packaging
SERVER-37067 Upgrade static OpenSSL to 1.1.0i
SERVER-37158 Set compatibility_version field for darwin SDK shared libraries
SERVER-37402 Improve mobile licensing text
SERVER-37407 Harmonize embedded tarball name and unpacked directory names
SERVER-37488 Install BCSymbolsMap into darwin embedded frameworks
SERVER-37584 Build failure on case-sensitive macOS file system: CommonHmac.h
SERVER-37596 Add debug info packages to mobile SDK builds
SERVER-37640 no member named 'SSLCopyRequestedPeerNameLength' in the global namespace
SERVER-37651 Update license files for MongoDB Community Edition
SERVER-37691 Compile WatchOS builds with -fapplication-extension flag
SERVER-37754 Duplicate license headers in IDL files
SERVER-37785 Rename bundle identifier in frameworks to adhere to bundle naming rules
SERVER-37852 Publish mobile artifacts on release builds
Tools
TOOLS-2069 mongoreplay does not support SCRAM-SHA-256
TOOLS-2102 Mongorestore does not check for errors decoding the oplog.bson file
TOOLS-2131 mongorestore hang in replaying oplog with --archive and --oplogReplay option
Internals
SERVER-18985 setParameter should log at level 0
SERVER-31570 Adjust mongobridge port allocations for easier debugging
SERVER-33470 Log archival message, even if successful, in hook_test_archival.py
SERVER-34986 CIDR Block That is Exempt from maxConns
SERVER-35570 Improve robustness of backup_restore.js around dropping test database
SERVER-35818 provide a stdx::variant
SERVER-35861 Remove call to dashboard_gen.py in perf.yml
SERVER-36250 Add support for optionally logging specific negotiated TLS versions
SERVER-36420 SecTrustCopyAnchorCertificates is not safe to use after a fork
SERVER-36451 ContinuousStepdown with killing nodes can hang due to not being able to start the primary
SERVER-36705 Add CocoaPod for embedded darwin frameworks
SERVER-36721 list_local_sessions.js cannot run concurrently with refreshLogicalSessionCacheNow
SERVER-36756 Log the githash of the 10gen/jstestfuzz repository when the fuzzer's self-tests fail
SERVER-36885 Make ASIO remember IOCP state when transiently out of resources
SERVER-36964 Prevent secondaries in SessionsCollectionRS from attempting to set up the sessions collection.
SERVER-36986 list_local_sessions.js expects non-existent session to exist when running concurrently with LogicalSessionsCache refresh
SERVER-36988 awaitdata_getmore_cmd.js times out when run concurrently with the LogicalSessionCache refresh suite
SERVER-37064 Wrap "mongod_flags" onto multiple lines for readability
SERVER-37081 Catch asio::system_errors when resolving GenericSocket
SERVER-37083 Improve Window secure allocator
SERVER-37228 Escape double quotes in hang analyzer's waitsfor graph
SERVER-37334 Strip .jar and .aar of unnecessary shared objects
SERVER-37353 Handle $slice value of LLONG_MIN gracefully
SERVER-37391 plan_cache_index_create.js should wait for index build start, rather than just createIndexes command start
SERVER-37393 Fix destructor race in
ReplicaSetMonitorManager
SERVER-37410 Add standalone passthrough suites to detect errors in LogicalSessionCache
SERVER-37411 Fix bundle identifiers in embedded Info.plist
SERVER-37424 Sys-perf: change v4.0 branch batch time to once a week
SERVER-37425 Longevity tests -- increase batch time to once a year
SERVER-37464 Reduce threadCount and iterations in secondary_reads.js workload
SERVER-37467 Have collect_resource_info.py recover from transient errors.
SERVER-37477 Disable TIG daily cron for update_test_lifecycle
SERVER-37495 Change Android minimum API level to 21
SERVER-37513 Pass along JNA exceptions from MongoEmbeddedCAPI.create
SERVER-37561 Server startupWarnings show spurious empty lines
SERVER-37563 Get rid of
getGlobalAuthorizationManager
and unnecessary references to theauthorization_manager_global
librarySERVER-37583 Changes to etc/cloud_nightly.yml
SERVER-37599 Log exit code of shell-spawned processes
SERVER-37683 Change embedded iOS min version to 11.0 in CocoaPod podspec
SERVER-37684 Change embedded iOS min version to 11.0 in evergreen builders
SERVER-37685 ensure free monitoring queue preserves FIFO on messages with same deadline
SERVER-37701 Make SessionUpdateTracker include the uid portion of LogicalSessionId when tracking
SERVER-37744 Fix license path in mongoc_embedded podspec
SERVER-37755 Invalid .plist for mongoc and bson .frameworks
SERVER-37813 Switch Android publishing from Bintray to Artifactory
SERVER-37832 Fix Windows/OSX ssl_options_test unittests on v4.0
WT-3898 Keep prepared updates in lookaside until they are read
WT-3995 Enhance timestamp abort to accept more number of threads
WT-4149 Log recovery and salvage should handle removal or truncation of log files
WT-4164 Ensure test/format configures a reasonably sized cache
WT-4214 Simplify timestamp handling for timestamp abort test
WT-4217 Enhance commit and rollback to re-read prepared updates
WT-4220 Enable long running prepared support
WT-4224 Add statistics for prepared transactions
WT-4293 WT_CURSOR.remove can lose a cursor position
WT-4297 Enhance steady throughput workload
WT-4314 Don't access unmapped pages when evicting a tree
WT-4315 In rollback_to_stable, only check timestamp order if enforced
WT-4322 Enable direct I/O based crash test in make check
WT-4323 Fix race between setting transaction read_timestamp and updating global pinned timestamp
WT-4328 Use an internal session handle for schema operations in a txn
WT-4330 Change the wt utility to not use stdout if the -f option to the dump or printlog commands is specified
WT-4333 WiredTiger cursor cache doesn't handle all possible locked handle states
WT-4335 Don't fail rollback_to_stable due to sweep activity
WT-4337 Coverity #1395811 Time of check time of use
WT-4338 New WT_TXN_TS_XXX flags break #undef HAVE_TIMESTAMPS build
WT-4339 Revert part of a previous commit that simplified handle locking
WT-4340 The cursor caching layer can incorrectly release too many handle locks
WT-4341 Support million collection testing in Evergeen
WT-4342 Set session max on all configuration strings in timestamp_abort test
WT-4346 Remove prepared updates from lookaside on reading the page.
WT-4347 Limit the threads spawned by timestamp_abort with default config
WT-4348 Create all tables before spawning threads in random_directio test
WT-4351 Ensure resolving prepared transactions use updates from itself
WT-4355 Fail to find prepared updates during transaction rollback
WT-4358 Enhance the handle-lock stress test program
WT-4374 Fix a bug where a page could transition from WT_REF_LIMBO incorrectly
WT-4387 Fix ordering of referenced shared libraries in workgen
WT-4389 Update wtperf runner script to accept multiple arguments
4.0.3 Changelog
Security
SERVER-35418 Allow specifying CAs for incoming and outgoing connections separately
SERVER-36456 MongoD does not support kerberos on Windows
SERVER-36827 Warning about "No SSL certificate validation can be performed" is misleading
Sharding
SERVER-30841 Lower the amount of metadata refresh logging
SERVER-34500 Use causal consistency in database_versioning_upgrade_downgrade.js test when reading from secondary after setFCV
SERVER-35222 Crash on the config server at expired session cleanup
SERVER-35755 CollectionLock acquisition in shard_filtering_metadata_refresh.cpp can cause server to terminate on stepdown
SERVER-35773 MetadataManager directly calls into the CatalogCache
SERVER-36054 Get rid of ScopedCollectionMetadata's operator bool
SERVER-36116 Get rid of CollectionShardingState::resetAll
SERVER-36130 Migration status reports verify connection strings -- but those can change
SERVER-36164 Decouple ScopedCollectionMetadata from MetadataManager
SERVER-36332 CursorNotFound error in GetMore on a secondary with sessions
SERVER-36433 NamespaceSerializer lock should be used during drop database
SERVER-36634 Change FCV check to check for CommandNotFound in _shardsvrShardCollection and write to config after creating collections on non-primary shards
SERVER-37050 wait for replication in session_collection_auto_healing
Replication
SERVER-35616 Oplog query on initial syncing node can cause segmentation fault
SERVER-35793 Write concurrency test to verify server-wide transactions metrics tracking
SERVER-35821 readConcern:snapshot transactions need a read timestamp <= WT's all_committed point
SERVER-36127 use w:majority instead of w:2 in apply_batch_only_goes_forward.js
SERVER-36470 Prevent change_stream_failover.js to elect a new primary which is the same as old primary after old primary steps down.
SERVER-36503 Skip dry-run election during election handoff
SERVER-36539 Test that DBClientCursor sends getMore for exhaust cursor if moreToCome is not set
SERVER-36565 Killing a session with a transaction can cause the thread to throw WriteConflictError
SERVER-36746 A failed step down attempt shouldn't unconditionally reset LeaderMode to kMaster
SERVER-36846 TransactionsMetrics unit test should sleep a bit when trying to assert elapsed time > 0
SERVER-36975 Fix race condition in read_concern_snapshot_catalog_invalidation.js
SERVER-36982 Reintroduce enableMajorityReadConcern:false server parameter
SERVER-36985 Test single replica set transactions immediately after a rollbackViaRefetch
SERVER-37010 Prevent unexpected elections in initial_sync4.js and initial_sync_rename_collection*.js
SERVER-37048 Hold global intent lock whenever accessing the oplog collection pointer
SERVER-37105 Make it clear from the stack trace whether a command is running in a transaction
SERVER-37147 sessions_collection_auto_healing.js should use 2 node replica set
SERVER-37152 Increase write concern timeouts for writes expected to succeed in tags.js
Query
SERVER-13946 Consider putting skip stages below fetch stages
SERVER-36212 getMore should not enforce that session ID matches until FCV is 4.0
SERVER-36299 Implement support for exhaust cursors with OP_MSG in DBClientCursor
SERVER-36435 Increase maxTimeMS timeout in awaitdata_getmore_cmd.js
SERVER-36453 Fix race condition in aggregation_cursor_invalidations.js
SERVER-36944 applyOps does not permit unknown field names when creating a v:1 index
SERVER-36951 applyOps should work with a createIndexes command without a UUID
Aggregation
SERVER-36993 mongod crash: Invariant failure indexedOr src/mongo/db/query/index_tag.cpp 237
Storage
SERVER-34577 read_after_optime.js fails on mongoe
SERVER-34606 Test (and possibly fix) behavior around majority commit point and oplog truncation
SERVER-35657 Do not delay journal flushes when operations are waiting for oplog visibility
SERVER-35780
renameCollection
across databases incorrectly timestamps metadata for secondary index buildsSERVER-36400 Explicitly destroy the client on exiting the run body of each BackgroundJob
SERVER-36531 Lock acquisition may throw despite presence of UninterruptibleLockGuard when WT tickets are exhausted
SERVER-36879 write regression test for stuck cache issue during rollback
SERVER-36961 createIndexes command should check if index already exists with weak lock
SERVER-36969 initial_sync_wt_cache_full.js takes too long to complete on slow hosts
SERVER-37002 dropping a collection with long index names via rename fails under MMAPv1
SERVER-37121 Retry timestamping secondary background index builds
WiredTiger
SERVER-19815 Make repair more robust with the WiredTiger storage engine
Operations
SERVER-27588 Warning to disable defrag of transparent_hugepages when thp is disabled
SERVER-33606 mongo shell startSession() should fail if the server doesn't support logical sessions
SERVER-34864 String-valued fields should not participate in schema change detection in ftdc
SERVER-35989 Mongo shell needs a countDocuments function
Build and Packaging
SERVER-29908 Libraries db/s/sharding and db/query/query are directly cyclic
SERVER-33911 Allow overriding global link model for specific targets
SERVER-33912 Remove --disable-warnings-as-errors from embedded builds
SERVER-34007 Relicense Embedded SDK Builds
SERVER-35078 Build embedded SDK with bitcode
SERVER-35184 Enable link-time-optimization for embedded SDK builders
SERVER-36884 Update curator version on stable branches
SERVER-36943 Build embedded targets with -Wl,-object_path_lto
SERVER-37138 Revert to always building with bitcode
SERVER-37157 Create unified darwin builder for embedded
SERVER-37251 Revert to stable channel for Android NDK setup
Tools
SERVER-30997 mongo cli --password is masked, but not when using mongodb:// connection string
TOOLS-2035 mongofiles_write_concern_mongos.js fails on server unstable
Internals
SERVER-28990 when started with --repair mongod should not try to bind to a port
SERVER-33908 Add pre and post invocation background activity hooks to CAPI implementation
SERVER-33978 References to sudo in evergreen.yml should use ${set_sudo}
SERVER-34120 scoped connection not being returned to the pool
SERVER-34711 Enable burn_in_tests to understand Evergreen task selectors
SERVER-34798 Replace subclasses of ServiceContext with decorations and flexible initialization code
SERVER-35216 Expose ReplicaSetManager refresh period to the mongo shell
SERVER-35233 Powercycle remote collection validation does not skip views
SERVER-35284 C++ "death test" unit tests should fork before constructing the test fixture, not after.
SERVER-35517 Add failpoint mechanism to the mongo shell
SERVER-35585 Make PeriodicRunner jobs be pausable/resumable
SERVER-35629 Use WiredTiger salvage API for repairing metadata files
SERVER-35630 Missing or corrupt data files should cause MongoDB to exit with an error message to run repair
SERVER-35696 Provide a way to restore idents known by WiredTiger, but unknown to the _mdb_catalog
SERVER-35731 Prevent a repaired node from re-joining a replica set
SERVER-35782 Repair should move aside unsalvageable data files and create empty ones in their place
SERVER-35784 Fix ambiguously named test fixture in
commands_test.cpp
SERVER-35800 resmoke.py should retry getting a build_id and test_id from logkeeper
SERVER-35985 sessions_test and sharding_catalog_manager_test don't destroy all Clients before destroying the ServiceContext
SERVER-36019 Create script to collect resource utilization of Android application
SERVER-36069 Vendor mongoebench-compatible JSON config files from mongodb/mongo-perf into src/third_party
SERVER-36076 Create new resmoke.py test suite for running mongoebench on a desktop
SERVER-36077 Create new resmoke.py test suite for running mongoebench on an Android device
SERVER-36078 Integrate adb resource monitor into mongoebench test suite for Android
SERVER-36084 Remove sharding runtime from embedded
SERVER-36162 Powercycle - ensure internal crash command has been executed on the remote host
SERVER-36169 Resmoke: bare raise outside except in the stepdown hook
SERVER-36258 Perform construction of ServiceContext after execution of mongo initializers, not during
SERVER-36347 Make parse_zone_info.js handle new error message from ServiceContext refactor
SERVER-36351 ServiceContextMongoDTest doesn't persist TempDir correctly
SERVER-36474 Cannot initiate a replica set if free monitoring is disabled at command-line
SERVER-36621 A call to log() in capi_test.cpp does not print to stdout
SERVER-36691 Only recover orphaned collection idents when starting with repair, not after an unclean shutdown
SERVER-36702 SCons to be able to install binaries as darwin framework
SERVER-36703 SCons to be able to link against darwin frameworks
SERVER-36704 Embedded to support logical sessions the same way as standalone mongod
SERVER-36722 Add remote maven repository for embedded AAR/JAR
SERVER-36725 periodic_runner_impl_test should manually call tearDown
SERVER-36732 Wait for all secondaries to be up and electable in election handoff jstests
SERVER-36747 Add a small time delay to "jstests/ssl/ssl_client_certificate_warning_suppression.js"
SERVER-36749 Remove race in Service Executor Adaptive shutdown
SERVER-36757 Generate and extract mongoebench-compatible JSON config files to consistent locations
SERVER-36761 Add requires_replication tag to disk/repair_invalidates_replica_set_config.js
SERVER-36768 Orphaned collection recovery should allow recovered collections to be renamed
SERVER-36783 Run the secondary_reads_passthrough task of enterprise-rhel-62-64-bit-inmem on rhel62-large
SERVER-36836 v4.0 fsm workload "yield_group.js" should accept "InternalError" as a possible outcome of the group command
SERVER-36842 Core dump not generated after invariant failure in powercycle hosts
SERVER-36869 fsm capped collection checks should only make 1 query for assertions
SERVER-36897 OplogReader.hasNext can return false -> true, confusing
checkOplogs
SERVER-36906 Connection state now allowed to be kConnectionStateUnknown
SERVER-36919 Add server setParameter tlsWithholdClientCertificate (bool)
SERVER-36942 Differentiate invalid hostname from invalid certificate
SERVER-36947 Enable test commands for perf micro benchmarks
SERVER-36980 Remove old aggregation fuzzer from evergreen
SERVER-36987 ChunkVersion::minorVersion truncates to 16 bit
SERVER-37013 mongoebench-compatible JSON config files attempt to read from views without using "find" command
SERVER-37041 Update eval blacklists on older branches to account for differences in tests across branches
SERVER-37042 Handle exceptions from cursor.next in ReplSetTest
SERVER-37071 Blacklist set7.js and max_doc_size.js from retryable_writes_jscore_stepdown_passthrough
SERVER-37127 Update baseline comparison for sys-perf
SERVER-37149 Remove deadlock in ScheduleBeforeStartupTest
SERVER-37156 benchRun should wait for the worker threads it spawns to exit
SERVER-37170 mongos fails to start with error 'DuplicateKey SetWiredTigerCustomizationHooks' on dynamic builds
SERVER-37216 Android Multiarch builder can't publish to mavenLocal
SERVER-37256 Add missing index_access_methods dependency to storage_wiredtiger_recovery_unit_test
TOOLS-1989 Switch evergreen intensive testing to match server priority buildversions
TOOLS-2050 oplog_rename_test fails on Windows due to access violation error
TOOLS-2099 Tools jstests failing on replica set shutdown
WT-3735 Add a workgen workload that generates a lot of page splits
WT-3736 Add statistics to measure contention on lookaside cursor
WT-3879 Disallow checkpoint from evicting metadata pages
WT-3894 Timestamp queue implementation and statistics improvements
WT-4090 Low priority reads
WT-4104 Fix test/format failure during comparing data content with berkeley db
WT-4119 Avoid restarts updating / removing during a column store scan
WT-4131 Rename lookaside to cache overflow
WT-4144 Fix rollback_to_stable with lookaside history
WT-4154 Surface the oldest read timestamp
WT-4156 Add new wiredtiger_salvage top level API
WT-4176 Expose a WT_SESSION.query_timestamp method
WT-4177 Backup cursor open should force a log file switch
WT-4185 Don't remove all lookaside entries when reading a page
WT-4211 Add automated test for long running prepared transactions
WT-4212 Update lookaside schema to handle prepared transactions
WT-4216 Use separate counters for page_swap yield and sleep
WT-4218 Change eviction to evict prepared updates
WT-4225 Automate a backup test that simulates volume snapshot via dd
WT-4231 Fix ctags index of functions with attributes
WT-4233 Change log corruption errors to warnings and truncate log
WT-4239 Don't allow checkpoints to perform insert-splits in the tree
WT-4241 GNU-stack section should never be conditionally compiled out
WT-4243 Fix lookaside sweep to not remove required entries
WT-4246 Change transaction update list to support indirect references
WT-4248 Fix checkpoints in schema_abort for slow machines
WT-4249 Attempt to discard dirty page during verify operation
WT-4251 Prepared updates cannot be discarded
WT-4252 Btree debug functions can leak scratch buffers on error.
WT-4253 Btree debug function to do blind reads doesn't handle row-store internal pages
WT-4256 Loosen check during rollback_to_stable
WT-4257 Don't assume timestamps from lookaside are aligned in memory
WT-4259 Restore ref to the previous state rather than MEM when eviction fails
WT-4261 Test salvage of out-of-sync metadata/turtle files
WT-4262 Lock deleted children in eviction of internal pages
WT-4263 Use the right tree when copying a key for a lookaside write
WT-4264 Compaction can race with page modifications
WT-4267 fixed-length column store operations can corrupt data
WT-4268 Random abort should wait until record files exist before starting timer
WT-4270 Add an operation field to know where threads hang
WT-4272 Increase startup timeout to 30 seconds for slow I/O systems
WT-4274 Fix memory leak in wt4156_metadata_salvage test
WT-4277 Make truncate in column stores more efficient
WT-4281 Shorten runtime of Python test suite
WT-4282 Don't transition pages from limbo to mem unless required
WT-4283 Restore WT_ERROR and use a corrupt flag
WT-4284 Print a verbose message in recovery on error too
WT-4285 Fix wt4156_metadata_salvage Coverity/lint complaints
WT-4286 Column store should skip end-of-table checks if there's an exact match
WT-4288 Don't let return value of closing conn overwrite WT_TRY_SALVAGE
WT-4289 Update WT_DATA_CORRUPTION to WT_TRY_SALVAGE in test_txn19.py
WT-4291 Fix test_txn19.py error detection by looking for WT_ERROR
WT-4292 Add call to testutil_cleanup to avoid memory leak
WT-4300 Setting the update timestamp can overwrite the WT_REF.addr field
WT-4301 WT_CURSOR.reserve operations can leak memory when committed
WT-4305 Add a gating variable for long running prepare support
WT-4306 Fix mode if metadata pages need eviction
WT-4308 Insert split during sync should not free blocks
WT-4321 Disable the random direct I/O test
WT-4325 Add a WiredTiger-local version of the qsort(3) call
4.0.2 Changelog
Sharding
SERVER-14394 Create initial hashed shard key chunks directly on shards
SERVER-25333 Clean up MigrationDestinationManager
SERVER-27725 Use batch insert when migrating chunks
SERVER-33417 Replace custom majority write catchup with Replication-designed write concern method in the Migration Destination Manager
SERVER-35092 ShardServerCatalogCacheLoader should have a timeout waiting for read concern
SERVER-35238 Drop the collection after removing the partially written chunks for mapReduce in mongos_manual_intervention_actions.js
SERVER-35441 drop/dropDatabase does not cleanup config.tags
SERVER-35658 session migration is too sensitive to replica set primary elections
SERVER-35676 numInitialChunks Argument is Not Validated
SERVER-35720 Allow zones to be created on non-existent collection
SERVER-35722 Create internal _shardsvrShardCollection command that runs on the primary shard
SERVER-35723 Make the collection critical section into a RAII class
SERVER-35794 Read zone information for a collection during internal shardCollection command
SERVER-35849 Remove dependency of the write commands on
sharding_runtime_d
SERVER-36031 Move logic to create initial chunks and update metadata during shard collection to the primary shard
SERVER-36071 Check shardsvrShardCollection response status
SERVER-36092 Create internal command to create collection on new shard with existing uuid
SERVER-36102 Create initial chunks on appropriate shards for zoned sharding
SERVER-36322 NamespaceSerializer lock should be used for dropCollection
SERVER-36463 Bypass validation of a dummy signatures for isMaster on the unauthenticated connections
SERVER-36550 Blacklist drop_sharded_db_tags_cleanup.js in sharding_last_stable_mongos_and_mixed_shards suite
SERVER-36849 Disable new shard collection path on v4.0
Replication
SERVER-32148 make NamespaceNotFound an acceptable error for emptyCapped and convertToCapped
SERVER-32907 Turn heartbeat log verbosity back down in tests
SERVER-33243 Improve logging when a node changes its sync source
SERVER-33248 Allow choosing a sync source that we are up to date with if it has a higher lastOpCommitted
SERVER-35058 Don't only rely on heartbeat to signal secondary positions in stepdown command
SERVER-35126 Create TxnStats class and store it on the Session
SERVER-35129 Create a ServerTransactionsMetrics class and store it as a decoration on the ServiceContext
SERVER-35146 Track total number of started transactions
SERVER-35147 Track total number of committed and aborted transactions in ServerTransactionsMetrics
SERVER-35149 Track total number of open transactions in ServerTransactionsMetrics
SERVER-35151 Track total number of active and inactive transactions in ServerTransactionsMetrics
SERVER-35168 Track information about last client to run a transaction operation on session
SERVER-35173 Add autocommit value to transaction sub-document of currentOp
SERVER-35174 Add readConcern and readTimestamp to transaction sub-document of currentOp
SERVER-35239 AwaitData cursor must handle getMore from client with higher lastKnownCommittedOpTime
SERVER-35246 Ignore NamespaceNotFound errors when running collMod during checkReplicaSet in replsettest.js
SERVER-35292 Add total number of started transactions to serverStatus
SERVER-35293 Add counts of active and inactive transactions to serverStatus
SERVER-35294 Add total number of open transactions to serverStatus
SERVER-35295 Add total number of committed and aborted transactions to serverStatus
SERVER-35300 Track total transaction duration in TxnStats
SERVER-35302 Add startWallClockTime to the transaction sub-document of currentOp
SERVER-35305 Add timeOpenMicros to the transaction sub-document of currentOp
SERVER-35308 Track total active time of transaction in SingleTransactionStats
SERVER-35310 Add timeActiveMicros and timeInactiveMicros to transaction sub-document of currentOp
SERVER-35388 Improve misleading error messages for aggregation stages banned in transactions
SERVER-35428 Add the ability to add two OpDebug objects together
SERVER-35432 Add a method for printing out information about a slow transaction
SERVER-35433 Log slow transactions when they finish
SERVER-35434 Track aggregate OpDebug stats in SingleTransactionStats
SERVER-35442 stepdown global lock acqusition should use wait time, not freeze time
SERVER-35450 Add information about last client to run transaction operation to currentOp for inactive transactions
SERVER-35492 Rename TxnStats to SingleTransactionStats
SERVER-35623 Send a replSetStepUp command to an eligible candidate on stepdown
SERVER-35624 Enable election handoff by default and update affected tests
SERVER-35695 Enable transactions on inMemory storage engine with a command line flag
SERVER-35742 Update ServerTransactionsMetrics for failed commits
SERVER-35754 Avoid network errors in stopSet() in catchup_takeover_one_high_priority.js
SERVER-35766 Replication commands sent in candidate's new term can interrupt concurrent vote request
SERVER-35770 Running a multi-statement transaction when all WiredTiger write tickets are exhausted may lead to deadlock
SERVER-35951 Under PV1, ReplicationCoordinatorImpl::processReplSetFreeze for a single node RS should start an election instead of auto-winning.
SERVER-35962 buildindexes_false_with_system_indexes.js restarts nodes and should be tagged [requires_persistence]
SERVER-36128 ReplicationCoordinatorImpl::fillIsMasterForReplSet should return isMaster:false while in shutdown
SERVER-36225 Do not hold replication mutex when calling getMinValid
SERVER-36234 Fix ./jstests/replsets/initial_sync_drop_collection.js to prevent using stale heartbeat info in the test.
SERVER-36327 Use stepUp command instead of priorities as a way to designate primary nodes in tags.js
SERVER-36331 Kill running op when a transaction expires
SERVER-36461 Add 'transaction' identifier to slow transaction log output
SERVER-36592 Blacklist snapshot_read_kill_op_only.js workload from backup_restore.js lib
SERVER-36664 Use awaitReplication in read_committed_with_catalog_changes.js instead of getLastError
SERVER-36685 Reverse order of TransactionParticipant (Session in 4.0) and Client locks
Query
SERVER-26387 Replace noPassthrough/indexbg2.js with test that uses failpoints
SERVER-34846 Covered index with collated field returns incorrect result when collation not involved in match or sort
SERVER-36239 MatchExpression parser query rule
Aggregation
SERVER-36070 Aggregation with $out results in error when Auditing is enabled
SERVER-36123 Reject $out with mode: "replaceCollection" if the output collection is sharded
SERVER-36715 Pushing $sort stage to query system can leave pipeline in an unstitched state
JavaScript
SERVER-35986 Stop running eval command in parallel suite on older branches
Storage
SERVER-32994 Create a script to rebuild unique indexes in right format after a downgrade
SERVER-33740 Add Evergreen task for running powercycle against mobile storage engine
SERVER-35367 Hold locks in fewer callers of waitForAllEarlierOplogWritesToBeVisible()
SERVER-35386 Wait for the secondary's majority commit point to advance before pausing batch application in secondary_reads_timestamp_visibility.js
SERVER-35473 Mobile SE: Fix writeConflictRetry loop with map-reduce jstests
SERVER-35845 Add tag to noPassthrough/indexbg2.js
SERVER-36005
IndexCatalogEntryImpl::_catalogIsReady
is unsafe to unconditionally call.SERVER-36062 Mobile SE: Stop running parallel and concurrent suites on mobile variants
SERVER-36238 replica set startup fails in wt_cache_full.js, initial_sync_wt_cache_full.js, recovery_wt_cache_full.js when journaling is disabled
SERVER-36397 Embedded Server SDK Should Return Error When TTL Index Creation is Attempted
WiredTiger
SERVER-28734 Recover WiredTiger data files when lacking metadata, but have _mdb_catalog data
Operations
SERVER-34664 Commands that are unsupported in a transaction should error
SERVER-35180 Safeguard from setting operation session info values while in a direct client
SERVER-35617 Unpleasant db.enableFreeMonitoring "not master" error on newly launched mongod
SERVER-36294 Sum of currentActive and currentInactive not equal to currentOpen transactions
SERVER-36479 Log redaction does not show planSummary when slow queries are logged
Build and Packaging
SERVER-34393 Embedded transport layer should not depend on mongo internal code
SERVER-36686 Upgrade embedded C driver to 1.12.0
SERVER-36733 Rename embedded target SCons aliases
SERVER-36766 Add import/export macros for embedded SDK APIs
Internals
SERVER-32281 Thread pool task executor ignores errors returned from startCommand()
SERVER-33695 Include the loop name in the before and after recovery files in powertest.py
SERVER-34258 Error from mount_drives.sh on Windows
SERVER-34558 Add SSL_version to client metadata logging
SERVER-35003 Consider making the balancer threshold to always be 1
SERVER-35025 Tests depending on exact times removeShard is called are invalid
SERVER-35037 Create new concurrency suite that runs consecutive operations inside of a single transaction
SERVER-35056 Flush ready callbacks on NetworkInterfaceTL shutdown
SERVER-35100 Do not log a Python stack trace when a hook dynamic test fails
SERVER-35110 Log locations in set_feature_compatibility_version.js where fatal assertions/other errors are expected
SERVER-35215 Future::onError<ErrorCodes::Error>() to let you register a handler for a single code.
SERVER-35234 makePromiseFuture<T>() to create a bound Promise and Future
SERVER-35244 Dropping config db in 4.0.0-rc0 fails while it passes in 3.7.9 and earlier
SERVER-35537 Create version of benchRun() which can be used with embedded
SERVER-35559 Update transaction retry functions to not call abort after commit
SERVER-35592 Create Java bindings for the Embedded CAPI
SERVER-35654 rollback_transaction_table.js fails even in WT runs
SERVER-35661 Add 5 second syncdelay to rollback shutdown fuzzers
SERVER-35684 Remove promise.getFuture()
SERVER-35706 Fix race in ctor for LogicalSessionCacheImpl
SERVER-35775 Unhelpful Message String in db.getFreeMonitoringStatus()
SERVER-35919 Ensure all tests that "use transactions" perform collection drops with w:majority
SERVER-35946 Powercycle kill_mongod function should ensure the service is not in a running state
SERVER-36001 Add requires_document_locking tag to noPassthrough/indexbg2.js
SERVER-36067 Upload artifacts from running install-mobile-test target in Evergreen to S3
SERVER-36069 Vendor mongoebench-compatible JSON config files from mongodb/mongo-perf into src/third_party
SERVER-36073 Save stats from BenchRunner::finish() to a JSON file in mongoebench
SERVER-36129 Concurrency stepdown suites should wait for replication of workload setups before starting stepdown thread
SERVER-36191 Cleanup logic for converting BSONElement to strings
SERVER-36245 Create a multi-arch android variant
SERVER-36274 Re-enable --ycsb-throughput-analysis in sys-perf
SERVER-36301 build WT with HAVE_NO_CRC32_HARDWARE on RHEL 6.7 s390x
SERVER-36399 Fill in tasks for Cloud nightly tests
SERVER-36406 db._authOrThrow should prioritize user specified authenticationMechanism instead of server's mechanisms
SERVER-36448 Disable election handoff in suites that use the ContinuousStepdown hook
SERVER-36462 Add atlas user to runtime_secret.yml
SERVER-36466 Secure shutdown conditions for SpecificPool
SERVER-36623 Do not rebuild indexes before repairing databases
WT-3276 Add recover=salvage to recover from a corrupted log file
WT-3856 Create a test that runs recovery to different points of time with schema operations
WT-3943 Include full error message when a python test asserts
WT-3955 Add verbose option to log more messages on error returns
WT-3963 Add a schema intensive abort testing
WT-3968 Use compression ratio to tune page sizes
WT-4010 Simplify test/format timestamp handling.
WT-4026 Add implementation for existing file extension configuration API
WT-4134 Rework assertion that we don't discard required history
WT-4147 Log recovery should not ignore corruption outside of log records in a log file
WT-4160 Restore performance when timestamps are not in use
WT-4168 Update upgrading documentation for 3.1.0 release
WT-4169 Fix wt verify dump-pages failure
WT-4171 Enabling tree walk timing stress causes excessive slowdown
WT-4172 Add diagnostic hazard pointer checks in more places before freeing refs
WT-4174 Do not access the lookaside file in rollback_to_stable when running with in_memory=true
WT-4178 Fixes for wt_btree_immediately_durable needed for in-memory
WT-4179 Expose WiredTiger crc32c functions
WT-4182 Use conservative approach for log checksum errors
WT-4183 Extend verbose option to log more messages on error returns
WT-4186 Log recovery should detect and report corruption within log records
WT-4187 Coverity: unused value complaints
WT-4188 Coverity: unchecked return value complaints
WT-4189 Potential infinite loop in __async_flush_wait().
WT-4191 Fix Coverity static analysis errors
WT-4193 test/format snapshot-isolation search mismatch
WT-4194 Improve fairness of eviction with multiple tables
WT-4195 When encountering an illegal value, log the value that failed
WT-4196 Make log corruption checking work regardless of the machine byte order
WT-4198 Some supported MongoDB architectures don't support crc32 hardware
WT-4199 Fix an incorrect report of log corruption
WT-4201 Fix Coverity static analysis issues
WT-4206 Fix error handling in cursor close routines
WT-4207 Coverity #1394567: null pointer dereference
WT-4208 tree walks can be interrupted by locked internal pages
WT-4210 schema abort child process failing prematurely
WT-4213 Rename lock statistics that have redundant or misleading text
WT-4215 Allow recovery of backup without salvage
WT-4226 test/format LSM configurations can misconfigure prepare and timestamps
WT-4229 Lint
WT-4234 Remove documentation mention of legacy tool statlog.py
WT-4235 Fix workgen tracking of table state across workloads
WT-4242 New log file extension Python test failure
4.0.1 Changelog
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
commandsSERVER-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 timeSERVER-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 ofkNoTimestamp
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 compilersSERVER-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
WT-4163 Lint