4.2 Changelog
On this page
- 4.2.25 Changelog
- 4.2.24 Changelog
- 4.2.23 Changelog
- 4.2.22 Changelog
- 4.2.21 Changelog
- 4.2.20 Changelog
- 4.2.19 Changelog
- 4.2.18 Changelog
- 4.2.17 Changelog
- 4.2.16 Changelog
- 4.2.15 Changelog
- 4.2.14 Changelog
- 4.2.13 Changelog
- 4.2.12 Changelog
- 4.2.11 Changelog
- 4.2.10 Changelog
- 4.2.9 Changelog
- 4.2.8 Changelog
- 4.2.7 Changelog
- 4.2.6 Changelog
- 4.2.5 Changelog
- 4.2.4 Changelog
- 4.2.3 Changelog
- 4.2.2 Changelog
- 4.2.1 Changelog
4.2.25 Changelog
Sharding
SERVER-40459 Optimize the construction of the balancer's collection distribution status histogram
Internals
SERVER-68434 Equality to null can incorrectly use a cached partial ixscan which does not cover the predicate
SERVER-70973 Balancer should stop iterating collections when there are no more available shards
SERVER-71627 Refreshed cached collection route info will severely block all client request when a cluster with 1 million chunks
SERVER-76498 Update push task to run on rhel8.7-small
SERVER-80488 Avoid traversing routing table in balancer split chunk policy
SERVER-81966 Avoid modification of previous ChunkMap instances during refresh
SERVER-83706 [v4.2] fix 4.2 evergreen unittest binary saver
4.2.24 Changelog
Sharding
SERVER-68361 LogTransactionOperationsForShardingHandler::commit misses transferring documents from prepared and non-prepared transactions changing a document's shard key value
Aggregation
SERVER-49214 Add $toHashedIndexKey expression
Internals
SERVER-52545 Specify input/output to listIndexes command in IDL
SERVER-58047 $toHashedIndexKey expression doesn't add any dependencies
SERVER-58673 Enable featureFlagPerShardCursor
SERVER-61032 Convert all references to /opt/mongodbtoolchain/gdb to a versioned equivalent
SERVER-62201 Remove all outdated entries from backports_required_for_multiversion_tests.yml
SERVER-62400 Add $_passthroughToShard parameter to AggregateCommandRequest
SERVER-62681 Create change streams per shard cursor passthrough suite
SERVER-62738 Give mongos the ability to passthrough to a specific shard
SERVER-63772 Post Batch Resume token not sent on initial batch from per shard cursor change stream
SERVER-63773 Per Shard cursor post batch resume token not set in getMore responses
SERVER-63774 Pass optional dbVersion to runPipelineOnSpecificShard
SERVER-63781 $sortKey not filtered out in initial batch from post batch resume token
SERVER-68115 Bug fix for "elemMatchRootLength > 0" invariant trigger
SERVER-68126 Check for negative maxChunkSize input value in AutoSplitVector
SERVER-68470 Amazon Linux 4.2/4.4 RPMs fail to install due to missing shadow-utils
SERVER-68901 Incorrect $elemMatch query analysis in mongocryptd if document contains 2 different fields with the same name
SERVER-69001 Initial sync should set the minValid document to the "stopTimestamp"
SERVER-69004 [4.2] backport pm-2419 Per Shard Cursors via mongos
SERVER-69348 Commands must declare empty auth checks to be universally callable
SERVER-69569 Python scripts failing in Evergreen tasks
SERVER-69785 robustify change_streams_per_shard_cursor.js
SERVER-69944 Resmoke's globstar.py does not properly parse * before **
SERVER-70299 Remove JSON.send command usage
SERVER-70348 Remove EAGAIN for queryable WT and retry internally
SERVER-70427 Remove chef+kitchen package test infrastructure
SERVER-70469 Use virtual env python in watchdog tests
SERVER-70483 Update Resmoke to pass "evergreen_execution" up to logkeeper.
SERVER-70484 Remove signal processing module from perf.yml and sys_perf.yml
SERVER-70553 Add module support to the mongo test runner
SERVER-70633 Make per shard cursors suite actually run tests in 5.0
SERVER-70938 Remove --system-site-packages from virtual env setup
SERVER-71389 [v4.2] Add bsonUnorderedFieldsCompare
SERVER-71424 Fix failures in lint_fuzzer_sanity
SERVER-71471 Improve jstestfuzz deployment to work with new node run/install
SERVER-71533 Update legacy task generation to use new test stats location
SERVER-71534 lint_fuzzer_sanity_all regression caused by running multiple instances of npm
SERVER-71624 Remove lint_fuzzer_sanity_patch in favor of lint_fuzzer_sanity_all
SERVER-71759 dataSize command doesn't yield
SERVER-71772 Update ARM builds to target armv8.2-a on older branches
SERVER-71875 Stop run jstestfuzz on rhel62
SERVER-71950 Fail and log the operation when out-of-order keys are detected in WiredTiger
SERVER-72137 Handle case when test stats are not available
SERVER-72276 Remove all outdated entries from backports_required_for_multiversion_tests.yml
SERVER-72288 microbenchmark tests fail after "Enable M1 Mac support for DSI"
SERVER-72294 Upgrade all uses of sus12 to suse12-sp5
SERVER-72512 Indexes reported as valid when unable to return inconsistencies due to memory limit
SERVER-72535 Sharded clusters allow creating the 'admin', 'local', and 'config' databases with alternative casings
SERVER-73481 Validate does not detect out-of-order keys with {full: false}
SERVER-73636 Coverity analysis defect 135025: Inefficient vector resizing with reserve.
SERVER-73706 Save WTRecordStoreUassertOutOfOrder fail point state to prevent concurrency bugs in testing
SERVER-73986 [v4.2] Skip running validate_out_of_order.js on ephemeralForTest
WT-9477 Don't allow checkpoint triggering internal page split which leads to corrupted internal page in the checkpoint
WT-10461 Fix key out of order in skip list on weakly ordered architecture
WT-10584 Add missing read barriers in __cursor_skip_prev
4.2.23 Changelog
Sharding
SERVER-56127 Retryable update may execute more than once if chunk is migrated and shard key pattern uses nested fields
SERVER-63732 Add new implicitlyCreateIndex and enforceUniquenessCheck to shardCollection command
Internals
SERVER-61275 Destruct the size storer after the session cache has shutdown
SERVER-64573 Make implicitlyCreateIndex and enforceUniquenessCheck fields optional
SERVER-64659 Report in serverStatus number of file descriptors used during index builds
SERVER-64741 Create mongos appendOplogNote command
SERVER-66310 Make ExpressionSetUnion::isCommutative() collation aware
SERVER-66726 Fix serialization in killAllSessionsByPattern
SERVER-68158 serverstatus_indexbulkbuilder.js should run listIndexes on primary after creating indexes
SERVER-68359 Prevent TTLMonitor from processing index if expireAfterSeconds is NaN
SERVER-68487 add BSONElement method to check for NaN field values
SERVER-68574 Switch to the new logkeeper cluster
SERVER-68691 $graphLookup does not report variable references for 'restrictSearchWithMatch' filter
SERVER-68714 NaN issues in secure random number generator in mongo shell
SERVER-68925 Reintroduce check table logging settings at startup (revert SERVER-43664)
SERVER-69611 Set the -ffp-contract=off compiler option by default
4.2.22 Changelog
Sharding
SERVER-58747 The ShardServerCatalogCacheLoader doesn't interrupt ongoing operations on step up
SERVER-62272 Adding schema validation to a collection can prevent chunk migrations of failing documents
SERVER-62656 Decouple mongos-to-config-server connection pool sizing from mongos-to-shard-server connection pool sizing
Build and Packaging
SERVER-61894 Support the 'showRawUpdateDescription' option in change stream specs
SERVER-63159 Implement the $_internalApplyOplogUpdate aggregation stage
Internals
SERVER-55173 Segmentation fault in WiredTigerSession::releaseCursor
SERVER-59658 Improve logging to reflect that sharding metadata refresh waiting on replication
SERVER-60334 Avoid caching the cursor and session in WiredTigerSizeStorer
SERVER-60607 improve handling of large/NaN values for geo index version
SERVER-61321 Improve handling of large/NaN values for text index version
SERVER-64403 Find queries with SORT_MERGE collation-encode the missing sort attribute
SERVER-66418 Bad projection created during dependency analysis due to string order assumption
SERVER-66461 Run notarization earlier in the build process
SERVER-66556 Prevent potential race when releasing cursors during shutdown
SERVER-67993 fix 4.4 pylinters errors
SERVER-68130 AutoSplitVector could generate response bigger than BSONObjMaxUserSize
SERVER-68199 An active index build on the existing target collection of a renameCollection command can fail the mongod
4.2.21 Changelog
Build and Packaging
SERVER-64332 Notarize MongoDB builds for macos
SERVER-67139 Update rhel6 package test ami
Internals
SERVER-58506 Command to expose settability for Server Parameters
SERVER-61097 SizeStorer can cause deadlocks with cache eviction
SERVER-64184 Track usage of allowDiskUse:true in agg command
SERVER-65166 Use compareOptimes in abort_in_progress_transactions_on_step_up.js
SERVER-65244 Add RHEL 7 s390x to 4.2
SERVER-66176 [v4.4/v4.2] Minimize work under CollectionCatalog mutex
SERVER-66559 Expand the internalQueryMaxAddToSetBytes param from 32 to 64 bits
SERVER-66799 Fix getParameterWithDetails.js failure on ephemeralForTest
SERVER-66955 Remove JSON.send usage in perf projects
4.2.20 Changelog
Sharding
SERVER-64903 Make cancel_coordinate_txn_commit_with_tickets_exhausted.js robust to ShardServerCatalogCacheLoader performing deletes
Aggregation
SERVER-41714 $facet operator duplicates documents in the pipeline when preceded by $addFields and $match operators (in this exact order)
Internals
SERVER-53726 Platform Support: Remove RHEL6 zSeries
SERVER-57000 Fix handling of correlated pipeline with facet
SERVER-57676 Wait for a checkpoint before releasing the "hangOplogCapMaintainerThread" in oplog_rollover.js
SERVER-59435 Fix a double free inside DocumentSource::optimizeAt()
SERVER-60412 Host memory limit check does not honor cgroups v2
SERVER-62242 $indexOfArray does not work with duplicate values in array
SERVER-63141 Difference in $lookup/$redact/$let behaviour with pipeline optimization
SERVER-64642 Fix error where mongos returns CallbackCanceled and not InterruptedAtShutdown on shutdown
SERVER-64983 Release Client lock before rolling back WT transaction in TransactionParticipant::_resetTransactionState
SERVER-65421 Fix package test failures on RHEL 6/7
SERVER-65422 Fix package test failures on Ubuntu 16.04
4.2.19 Changelog
Sharding
SERVER-26755 Collection chunk loading is aborted entirely if fetching all the chunks takes more than 30 seconds
SERVER-45149 replSetStepDown command in txn_two_phase_commit_failover.js should not timeout
SERVER-53335 Queries, updates, and deletes with non-"simple" collations may miss documents when using hashed sharding
SERVER-59929 unexpected slower update/insert operation bease of splitchunk and moveChunk
SERVER-60682 TransactionCoordinator may block acquiring WiredTiger write ticket to persist its decision, prolonging transactions being in the prepared state
SERVER-61816 cancel_coordinate_txn_commit_with_tickets_exhausted.js can hang forever due to race condition between transaction reaper and transaction coordinator
SERVER-61924 retryable_mongos_write_errors.js fails in 4.2 multiversion suites due to missing failpoint command in 4.0
SERVER-62065 Upgrade path from 3.6 to 4.0 can leave chunk entries without history on the shards
SERVER-62739 cancel_coordinate_txn_commit_with_tickets_exhausted.js test should not be run with the ephemeral storage engine
SERVER-62906 Add a check in the createCollection/shardCollection path verifying the collection name length
Query
SERVER-23664 $mod match expression should raise an error when the remainder is not a number
SERVER-40691 $nin:[[],...] queries are not indexed
SERVER-57588 Inconsistent query results when an array position is indexed whose value is an array
SERVER-59754 Incorrect logging of queryHash/planCacheKey for operations that share the same $lookup shape
SERVER-62147 Exhaust query using the OP_QUERY protocol is broken when more than one getMore batch is required
Aggregation
SERVER-44484 Changestream with updateLookup uasserts on updates from before collection was sharded
Storage
SERVER-55483 Add a new startup parameter that skips verifying the table log settings
Internals
SERVER-51087 Add testing utility for creating an empty sharded collection with the specified bounds
SERVER-53726 Platform Support: Remove RHEL6 zSeries
SERVER-57312 Pin transitive Python dependencies and use the pinned file for installation in Evergreen
SERVER-60392 Fix timing in priority_takeover_two_nodes_equal_priority test.
SERVER-60685 TransactionCoordinator may interrupt locally executing update with non-Interruption error category, leading to server crash
SERVER-61662 SCons configure checks should always run with verbosity
SERVER-61743 The -fno-builtin-memcmp flag shouldn't be applied except on x86_64 platforms
SERVER-62005 [4.2] Add requires_document_locking to unique_index_insert_during_collection_scan.js
SERVER-62164 Remove several obsoleted build variants across all stable branches
SERVER-62320 (v4.2) Fix use after std::move in find command
SERVER-62668 Synchronize access to ImpersonatedUserMetadata in OperationContext.
SERVER-62825 Robustify causally_consistent_index_builds.js
SERVER-63197 Pin microbenchmarks genny version
SERVER-63203 Chunk splitter never splits if more than 8192 split points are found
WT-7993 If gathering handles and not in aggressive eviction mode, have eviction sleep to let checkpoint grab a contentious spinlock.
4.2.18 Changelog
Sharding
SERVER-48504 Combination of StaleShardVersion and ShardNotFound exception make the ChunkManagerTargeter crash
SERVER-54064 Sessions on arbiters accumulate and cannot be cleared out
SERVER-54623 Decrease number of jobs in causal consistency passthrough suites
SERVER-56226 [v4.4] Introduce 'permitMigrations' field on config.collections entry to prevent chunk migrations from committing
SERVER-56227 Add user-facing command to set allowMigrations to false for a sharded collection
SERVER-58985 Re-enable retryable_mongos_write_errors.js in multiversion suite once SERVER-55648 is backported to v4.0
SERVER-59160 Disable balancer in test_stacked_migration_cleanup.js
SERVER-59916 T{1, 2}Starts{First, Second}AndWins In WriteConflictHelpers Does Not Synchronize Committing Of Failed Transaction
SERVER-60653 Backport the autoSplitVector logic to v4.2
Replication
SERVER-50241 PeriodicShardedIndexConsistencyChecker should skip dropped collections
SERVER-56096 Invariant failure in ReplicationRecoveryImpl::recoverFromOplog
SERVER-58988 Avoid sync source selection cycle during primary catchup.
Aggregation
SERVER-59613 $range expression should error if it exceeds memory limit
Storage
SERVER-45953 Exempt oplog readers from acquiring read tickets
Operations
SERVER-28953 Capture df (disk full) statistics in FTDC
SERVER-53242 Always log collmod command
Internals
SERVER-52976 [4.2] collection_validation.cpp isn't used anywhere in the 4.2 branch
SERVER-53726 Platform Support: Remove RHEL6 zSeries
SERVER-55589 replSetMaintenance command does not take the RSTL
SERVER-56326 Add a round() method to the Decimal128 class
SERVER-56602 Track usage of match expressions in serverStatus
SERVER-57557 [v4.4] Support running checkFCV() shell helper with mongos connection
SERVER-57605 Expose Decimal128 equality comparison helper to shell
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-58119 single_node_set_new_hostname.js needs to call replSetReconfig with an assert.soonNoExcept
SERVER-58183 _applyPrepareTransaction does not ensure prepareConflictBehavior is kIgnoreConflictAcceptWrites on retry attempts
SERVER-58192 Use more unique_ptrs in QueryPlannerAnalysis::analyzeSort()
SERVER-58780 [v4.4] Ensure that _shouldSetStableTimestamp gets restored to true if replSetInitiate fails
SERVER-59108 Resolve race with transaction operation not killed after step down
SERVER-59120 Create unit tests for commitChunksMerge
SERVER-59191 SPIKE: git.get_project fails to clone
SERVER-59226 Deadlock when stepping down with a profile session marked as uninterruptible
SERVER-59294 Check action type for oidReset
SERVER-59459 mongodb fails to build with glibc-2.34
SERVER-59725 Remove push task from extra RHEL 6.2 variants
SERVER-59804 Using a separate branch for YCSB in system_perf.yml
SERVER-59879 Adjust maxTimeMS value to allow for slower execution in the parallel test suite
SERVER-60080 [v4.2] Disable tests incompatible with ephemeralForTest
SERVER-60085 Cap number of fallback test suites at number of tests in suite
SERVER-60149 Add RRFaM build variant to mongocryptd list on v4.2 branch
SERVER-60290 Update Windows external auth test distro
SERVER-60299 Backport PCRE bugfix for Bugzilla #2613
SERVER-60456 LDAPBindOptions go out of scope during heavily delayed binds on Windows
SERVER-60496 Resmoke Misinterprets Quotes In Evergreen.yml
SERVER-60582 [v4.4] initiate_emrc_false.js needs to wait for the initial checkpoint
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-60897 [4.2] mongod may loop forever when attempting to upsert invalid BSON
SERVER-60898 [v4.2] Exclude stepdown_race_with_transaction.js from running on ephemeralForTest
SERVER-60961 Add exclude tags to old branches not generating multiversion_exclude_tags.yml
SERVER-60971 Remove calls to BF suggestion service
SERVER-61164 Accept error code 48 (Inappropriate authentication) as a valid response for LDAP liveness check
SERVER-61427 Unique index builds can cause a loss of availability during commit due to checking many false duplicates
SERVER-61544 [4.2] Fix exclusion tag for stepdown_race_with_transaction.js
SERVER-61550 Modify auto_workload_path in perf.yml to be relative to cwd
SERVER-61791 pin pymongo
WT-7566 Resolve write after free for dead dhandle
WT-7858 Fix malloc writing out of bounds for overflow keys
WT-7984 Fix a bug that could cause a checkpoint to omit a page of data
4.2.17 Changelog
Storage
SERVER-49521 fix tests in core/txn to use write concern "majority" for createIndexes commands run before starting transactions
Internals
SERVER-48090 Support python 3.6 for evergreen.py and shrub.py
SERVER-50549 Transform connection-related error codes in proxied commands
SERVER-53726 Platform Support: Remove RHEL6 zSeries
SERVER-59456 Start the LDAPReaper threadpool
SERVER-59876 Large delays in returning from libcrypto.so while establishing egress connections
4.2.16 Changelog
Security
SERVER-57727 Race conditions in x509_invalid.js
Sharding
SERVER-55648 Mongos doesn't return top-level batch-write error in case of shutdown
SERVER-58909 Missing versions for "admin" and "config" databases migrating to version 4.2
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
SERVER-37904 Allow a node to override the cluster chaining (enabled/disabled) setting
SERVER-39621 Disabled chaining should enforce sync source change when the primary steps down even if the oplog fetcher isn't killed on sync source
SERVER-41875 Should ban "emptyCapped" commands on jstestfuzz_concurrent_replication_continuous__stepdown suite for WiredTiger Storage.
SERVER-50486 invokeWithSessionCheckedOut being called on prepared transactions on secondaries
SERVER-55465 Fix Invariant upon failed request for a vote from the current primary in the election dry-run of catchup takeover
SERVER-58258 Wait for initial sync to clear state before asserting 'replSetGetStatus' reply has no 'initialSync' field
Query
SERVER-55319 [4.2] Invariant failure isVersionInitialized() src/mongo/db/server_options.h 217 after index build completes
SERVER-58127 Fix benchRun() memory leak for parsing benchRun() args under exception
Build and Packaging
SERVER-54729 MongoDB Enterprise Debian/Ubuntu packages should depend on libsasl2-modules and libsasl2-modules-gssapi-mit
Internals
SERVER-49237 Add a way for OperationContexts to opt-in to always getting interrupted at stepdown
SERVER-50547 Explore aggregation pipeline length limit
SERVER-52728 Upgrade path from MongoDB 2.4 to 4.2 causes config servers to go down
SERVER-53431 Server should respond running operations with appropriate topologyVersion on stepdown
SERVER-53726 Platform Support: Remove RHEL6 zSeries
SERVER-55649 Sharding messages being logged for non-sharded clusters
SERVER-56489 New pass-through test with random hello server-side delays
SERVER-56516 Fix undefined behaviour in parsing code for $slice projectional operator
SERVER-56839 Index seeks concurrent with recently-committed prepared transactions can return wrong results
SERVER-57033 The AuthorizationManager Cache in 4.2 should use roles as cache key
SERVER-57064 Log create index and dropIndex(es) on mongos
SERVER-57360 Log additional debug info for the "invariant (_requests.empty());" in ~LockerImpl
SERVER-57642 Invariant Failure on src/mongo/db/query/plan_yield_policy.cpp 75 | Aborting
SERVER-57650 Make MigrationChunkClonerSource interruptible when waiting response to recipient commands
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-58169 Log timestamps info on hitting invariants around stable timestamp calculation
SERVER-58187 Improve Connection Reaper and MongoLDAP performance
SERVER-58191 [Migrate Protocol] Allow delete_during_migrate.js to tolerate chunk migration failures due to timeout in catchup phase in slow variants.
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
SERVER-58402 Increase timeout of shutdown command in shutdown_primary.js
SERVER-58623 Shorten the mongos RSM refresh interval in delayed Hello tests
SERVER-58826 [4.2] Disallow compact_keeps_indexes.js and explain_shell_helpers .js to run concurrently on parallel suite
SERVER-59074 Do not acquire storage tickets just to set/wait on oplog visibility
SERVER-59135 Make mongocryptd targets in MSIs depend on libsasl2
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-59388 Revert BACKPORT-10185
SERVER-59414 Retry curator setup in powercycle on older 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-7675 Query last ckpt timestamp changes without taking checkpoint
WT-7721 Update test-format to reopen an existing database with different config
WT-7776 Add a hard limit on the number of modify updates before we instantiate a complete update
WT-7871 Remove comment that is no longer true
4.2.15 Changelog
Security
SERVER-56240 Turn on checkpointing for the keystore Data Store
Sharding
SERVER-46811 multi=true updates can modify the shard key of orphan documents and cause them to become owned
SERVER-47534 Unblacklist mongos_dataSize.js from sharding_last_stable_mongos_and_mixed_shards suite
SERVER-47699 Change yield type used by range deleter from YIELD_MANUAL to YIELD_AUTO
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-51170 Ensure database refreshes are performed after ShardingState initialization
SERVER-53029 Port the changes for SERVER-52955 to later branches
SERVER-56515 Chunk merge doesn't consider the incrementChunkMajorVersionOnChunkSplits parameter
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-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
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-45919 replSetReconfig should be allowed to fail with InterruptedDueToReplStateChange when racing with an election
SERVER-53447 Blacklist insert1.js with from transaction passthrough tests with failures
SERVER-55465 Fix Invariant upon failed request for a vote from the current primary in the election dry-run of catchup takeover
SERVER-55766 Introduce an optimized "for restore" startup replication recovery mechanism
SERVER-56054 Change minThreads value for replication writer thread pool to 0
SERVER-56415 AwaitNodesAgreeOnPrimary doesn't work when given non-default set of nodes
SERVER-56937 upgradeSet() in multi_rs.js may lose authentication state while upgrading primary
Write Operations
SERVER-38909 Permit empty update modifiers, treating as a no-op rather than an error
Storage
SERVER-51699 index_build_restart_secondary.js (indexbg_restart_secondary.js) should handle exceptions when checking indexes after restarting node
Operations
SERVER-48567 Warnings while processing snmpwalk
Build and Packaging
SERVER-50568 Platform Support: Remove Ubuntu18.04 zSeries from 5.0
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-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-47720 Clarify "RecordId(...) not found in the index for key" log message
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-49336 Set client metadata if it is missing during failCommand
SERVER-50955 oplog_rollover.js pauses the OplogCapMaintainerThread until truncation is needed
SERVER-53334 Hitting unexpected invariant failure, causing server shutdown
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-53841 Additional logging for oplog_rollover.js
SERVER-54489 Full validation can append errors without bound
SERVER-54897 Adding the shard-single config to etc/system_perf.yml
SERVER-55019 install_compass does not run on all supported platforms
SERVER-55119 Create startup warning indicating that X.509 certificates without SANs are deprecated
SERVER-55316 Disconnect LDAP connections out of line
SERVER-55742 Define kmipClientCertificateSelector config on windows/macOS
SERVER-56062 Restart index builds after CappedPositionLost errors
SERVER-56164 All performance projects use the master DSI branch
SERVER-56273 Update curator hash in powercycle remote host setup
SERVER-56307 The chunk migration "convergence algorithm" is very primitive
SERVER-56310 Use w: majority for createCollection command in kill_sessions_with_prepared_transaction.js
SERVER-56325 Wait for failpoint in server_transaction_metrics.js to be hit so that a valid serverStatus is received
SERVER-56347 Enable LSE intrinsics in release
SERVER-56372 Add retryableFindAndModifyStorageLocation server parameter
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-56377 [RRFaM] Add FSM test to perform retryable FaM while flipping server parameter
SERVER-56452 Self anchor in PooledLDAPConnection::setup's callback
SERVER-56468 Incorrect plan cache entry for {$ne: null} predicate, leads to missing query results
SERVER-56501 Add op counters for legacy op codes (OP_QUERY, OP_INSERT, etc.)
SERVER-56563 [RRFaM] Forge noop image oplog entries for chunk migration
SERVER-56630 Unittest OpObserverImpl::onDelete/onUpdate paths for retryable findAndModify
SERVER-56713 [RRFaM] Avoid creating images while in initial sync
SERVER-56715 Using incorrect var name for logkeeper dataset on 4.2
SERVER-56819 $indexOfCP returns incorrect result when searching for empty string inside empty string with non-zero start index (classic execution engine only)
SERVER-56952 [4.4] Add new build variant with storeFindAndModifyImagesInSideCollection=true
SERVER-57015 [RRFaM] Writing to the image collection must be in an UnreplicatedWriteBlock
SERVER-57036 Pin MarkupSafe == 1.1.0
SERVER-57043 Test for Branching
SERVER-57053 Rewriting $nor with a $text predicate to $not is invalid
SERVER-57057 Reduce routing info refreshes on the mergeChunks path
SERVER-57091 Infinite loop in GranularityRounderPreferredNumbers::roundDown
SERVER-57145 Invariant failure at OCSPManager::requestStatus
SERVER-57157 assert serverStatus command works in getBinVersion() jstest helper
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-57233 Reap LDAP connections inline if multithreading is not enabled
SERVER-57273 remove the flow_control_replica_set.js test
SERVER-57275 Update kmip_server.py to be more verbose
SERVER-57299 Need to wait for failed exit code in startup_recovery_for_restore_needs_rollback.js
SERVER-57328 Make ReplsetTest.upgradeSet() tolerant of reelections
SERVER-57330 Update perf yaml configs for perf and sys-perf to use perf.send
SERVER-57476 Operation may block on prepare conflict while holding oplog slot, stalling replication indefinitely
SERVER-57490 [v4.2] Add storeFindAndModify build variant name to mongodcryptd list in etc/evergreen.yml
SERVER-57497 store_retryable_find_and_modify_images_in_side_collection.js should account for a later clustertime in retried findAndModify responses
SERVER-57544 Also backport store_retryable_find_and_modify_images_in_side_collection.js to 4.2
SERVER-57564 Increase system timeout duration to >2 hours to allow fio to copy over all files
SERVER-57708 ClientMetadata Parsing errors can leave ClientMetadataState decoration in invalid state
SERVER-57768 Deprecated counters aren't reset to zero on wrap
SERVER-57897 Add readPrefMode option to benchRun find/findOne ops
SERVER-57954 Update TPC-C version in sys-perf.yml
4.2.14 Changelog
Sharding
SERVER-52564 Deadlock between step down and MongoDOperationContextSession
Replication
SERVER-50412 Change “not master” error messages to “not primary”
SERVER-50414 Change “not master or secondary; cannot currently read from this replSet member” to “not primary or secondary; cannot currently read from this replSet member”
SERVER-54180 ReplSetTest's stepUp function only waits 6 seconds for nodes to agree on primary
SERVER-55007 Deadlock between step down and MongoDOperationContextSession
Query
SERVER-54710 Large number of $or clauses can create profiling entry exceeding max BSON size, causing the query to fail when it should not
Storage
SERVER-44821 retrieving storage stats for currentOp blocked by slow oplog application
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-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-55067 Migrate Windows builds to VS Current distro
Internals
SERVER-5722 Support a 'sort' field in ops array for JS Benchmarking Harness
SERVER-42944 scons compiledb exits with a stack trace
SERVER-49054 Server MSI should install Compass instead of Compass Community
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-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-54136 Make the authenticate command respect enforceUserClusterSeparation
SERVER-55038 Collect data files if zbigMapReduce.js fails
SERVER-55189 Call awaitReplication() before returning from syncFrom() in rslib.js
SERVER-55225 [v4.2] Collect data files for incremental_backup_rollback.js
SERVER-55395 4.0.23 does not build with gcc 10
SERVER-55602 Relax non-read-only invariant in WiredTigerKVEngine::makeTemporaryRecordStore when recoverToOplogTimestamp is specified
SERVER-55753 Use w: majority for createCollection command in transactions_committed_with_tickets_exhausted.js
SERVER-56164 All performance projects use the master DSI branch
SERVER-56371 Upgrade timelib to 2021.06
SERVER-56451 [4.2] update test for backup API to retry on conflict with checkpoint thread
WT-7373 Improve slow random cursor operations on oplog
4.2.13 Changelog
Sharding
SERVER-53236 Disable merge_with_move_primary.js from running on the sharding_csrs_continuous_config_stepdown suite
SERVER-53651 Just search for user-issued profiled aggregation in read_pref_cmd.js
SERVER-54014 Define a reasonable maxTimeMsOverride for the checkOID requests
Replication
SERVER-51163 Mark nodes returning InvalidReplicaSetConfig in heartbeats as down
SERVER-53248 call awaitLastOpCommitted before committing transaction in retryable_prepared_commit_transaction_after_failover.js
SERVER-53609 lastCommittedTransaction section causes frequent schema changes that limit FTDC retention
SERVER-53666 curSecondary in rollback test fixture not guaranteed to be in SECONDARY state after restart
SERVER-54339 Prevent spontaneous elections in rollback_crud_op_sequences.js
SERVER-54648 Add correct log verbosity to disallow_adding_initialized_node2.js
Query
SERVER-47869 Add diagnostic logging to ClusterCursorManager
SERVER-48442 Fix change_streams.js to test events in any order
SERVER-50073 Error message when creating a mixed hashed/not hashed index does not state the problem
SERVER-54660 Make jstests/sharding/kill_pinned_cursor.js more robust
Storage
SERVER-46876 During the eviction pressure, we should quit the compact operation instead of crashing the process
SERVER-54760 (4.2) Ghost timestamps can cause concurrent causal snapshot reads to not read their own writes
Build and Packaging
SERVER-52705 Rebuilding mongodb according to building.md failed because python3 is an alias/link (led to ModuleNotFoundError)
SERVER-54058 Update Debian 10 AMI for package testing
SERVER-54255 Update RHEL 7 AMI for package testing
SERVER-54858 Update Amazon Linux AMI for package testing
Internals
SERVER-35649 Nodes removed due to isSelf failure should re-attempt to find themselves
SERVER-43904 When stepping down, step up doesn't filter out frozen nodes
SERVER-44132 DataBuilder move assignment computes size incorrectly
SERVER-45836 Provide more LDAP details (like server IP) at default log level
SERVER-46686 Explain does not respect maxTimeMS
SERVER-46740 establishCursors() must always drain the AsyncRequestsSender::_baton
SERVER-47030 Fix date_time_support code to not produce exceptions
SERVER-49222 ARM64 support on Amazon Linux 2
SERVER-50592 Update mypy pip requirement
SERVER-51038 resmoke.py can't be run on python 3.8
SERVER-51722 Ensure that MongoDB builds with ARM LSE atomics
SERVER-52884 Remove race in reconstruct_prepared_transactions_initial_sync.js
SERVER-53196 Fail to generate tasks if a large distro is specified but not available
SERVER-53394 Make ShardingTaskExecutorPoolReplicaSetMatching default to disabled for MongoD
SERVER-53579 python's dev-requirements.txt is incompatible with pip 20.3.3
SERVER-53612 StepDown hangs until timeout if all nodes are caught up but none is immediately electable
SERVER-53717 Dynamically split large concurrency tasks
SERVER-53780 Fix missing quote in test parameters
SERVER-53831 Force SpiderMonkey to garbage collect in ReplSetTest.checkOplogs
SERVER-53836 Add multiversion-related expansions on Enterprise Ubuntu 16.04 (with {taskExecutorPoolSize=4}) build variant
SERVER-53932 Multikey write during recovery of prepared transaction could use commit timestamp < stable timestamp
SERVER-53992 Remove calls to detect-outliers from performance tasks
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
SERVER-54139 Remove CURL share support from HTTP curl client
SERVER-54278 Add feature flag to disable Opportunistic Reads by default
SERVER-54366 Wait for node to start stepdown before killing shutdown operation in force_shutdown_primary.js
SERVER-54369 Update Jasper gRPC to latest version
SERVER-54458 updated vendored scons to use uuid for cache tmpfiles
SERVER-54484 resmoke/util/archival.py relies on deprecated and now removed thread.isAlive
SERVER-54505 Fix logic for ignored large distro build variants in 4.2
SERVER-54684 Decreased JS performance on arm64 due to mising init function
SERVER-54685 wrong definition of MONGO_YIELD_CORE_FOR_SMT for arm64
SERVER-54733 Enterprise Ubuntu 16.04 arm64 aggregation_multiversion_fuzzer failures
WT-6309 Add support for start/stop arguments to wt printlog command
WT-6430 Move WT_CONN_SERVER flags into their own field
WT-6844 Make force stop durable
WT-7026 Atomically read and set ref->addr in case of race
WT-7027 Run the metadata checkpoint for force_stop at read-committed isolation for incremental backup
WT-7028 Sweep thread shouldn't lock during checkpoint gathering handles
WT-7104 Redact user data from printlog output
4.2.12 Changelog
Sharding
SERVER-46393 Always check client last operation time when computing operationTime to append to the response
SERVER-50900 Disable PeriodicShardedIndexConsistencyChecker for cursor_valid_after_shard_stepdown.js
SERVER-52732 Uptime reporter disables autosplit during ShardingTest initialization
SERVER-53444 Make tests that run removeShard in assert.soon to wait for the state to become "completed" not error on ShardNotFound
Replication
SERVER-49187 Make ReplSetTest .stepUp() robust to election failures.
SERVER-50049 assert.soonNoExcept() should not access TestData.traceExceptions for non-resmoke tests.
SERVER-50416 Change notMasterLegacyUnacknowledgedWrites to notPrimaryLegacyUnacknowledgedWrites in serverStatus
SERVER-50417 Change notMasterUnacknowledgedWrites to notPrimaryUnacknowledgedWrites in serverStatus
SERVER-50869 Background sync may erroneously set applied-through during step-up
SERVER-50901 RollbackTest should wait for secondaries before doing data consistency checks
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-52744 rollback node's lastApplied > sync source's lastApplied in rollback_after_enabling_majority_reads.js
SERVER-53026 Secondary cannot restart replication
SERVER-53345 Excuse arbiter_new_hostname.js from multiversion tests
Query
SERVER-32960 $mod has inconsistent rounding/truncation behavior
SERVER-40361 Reduce memory footprint of plan cache entries
SERVER-50769 server restarted after expr:{"expr":"_currentApplyOps.getArrayLength() > 0","file":"src/mongo/db/pipeline/document_source_change_stream_transform.cpp","line":535}}
Aggregation
SERVER-34741 Move $match in front of $group if condition is on group key
SERVER-40090 DISTINCT_SCAN in agg is only used when certain format of _id is specified
SERVER-51886 $lookup + $merge pipeline may fail to resolve views correctly when collection names collide
Storage
SERVER-47812 Secondaries persist wildcard multikeypaths out of order
SERVER-48471 Hashed indexes may be incorrectly marked multikey and be ineligible as a shard key
SERVER-51858 Investigate queryable issue on 4.0.20
SERVER-52950 recoverOplogAsStandalone mode must not start oplog truncater thread
SERVER-53703 [4.2] Opening a transaction at the all durable timestamp can go backwards
Build and Packaging
SERVER-52891 Run PPC builds less frequently
Internals
SERVER-41836 Log thread ID as part of error in FSM tests
SERVER-43739 SNI name is not set on OSX if allowInvalidHostnames is enabled
SERVER-44375 fix merge_with_drop_shard.js when the curop command fails due to ShardNotFound
SERVER-47863 Initial Sync Progress Metrics
SERVER-48742 Log whenever profiler settings are changed via setProfilingLevel
SERVER-50267 Set output limit for 'rawMongoProgramOutput()'
SERVER-50445 Return the value as double when NumberLong subtraction overflows in ExpressionSubtract
SERVER-51526 Hybrid index builds can miss writes and crash in the event of a well-timed WriteConflictException
SERVER-51607 Upgrade Twisted dependency to at least twisted-19.7.0
SERVER-52618 Sparse hash index should not be used for equality to null match
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-52879 Periodic operation latency spikes every 5 minutes due to closing idle cached WT sessions
SERVER-52919 Wire compression not enabled for initial sync
SERVER-52929 Correctly handle compound indexes with 32 keys
SERVER-52969 Disable Powercyle on non-master branches
SERVER-52975 Fix use of 'onRollback' callback for collection validator options in 'collection_impl.cpp'
SERVER-53233 Fix change_streams_update_lookup_shard_metadata_missing.js [4.2, 4.0]
SERVER-53234 jstests/core/profile2.js fails when background operations are run against test database
WT-6835 Add API to allow consolidating incremental backup info
WT-6839 Add API to query existing incremental backup IDs
WT-6882 Files created during incremental backup should be copied in full
WT-6922 Add random consolidate testing to incr_backup
4.2.11 Changelog
Security
SERVER-45938 Allow matching O/OU/DC in client x509 cert if clusterMode:keyFile
Sharding
SERVER-36739 Use the mongos_manual_intervention_action hook in concurrency stepdown suites
SERVER-47616 Improve error when logical sessions cannot have more than one user authenticated on a single connection
SERVER-51808 invariant failure: readConcern level != Available
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-50415 Rename waitInIsMaster failpoint to waitInHello
SERVER-50527 Change NotMasterError category to NotPrimaryError
Query
SERVER-51120 Find queries with SORT_MERGE incorrectly sort the results when the collation is specified
SERVER-51853 Always initialize the numInserted out-parameter in AbstractIndexAccessMethod::insertKeys
Write Operations
SERVER-44586 add metrics to serverStatus to track type of update command
Aggregation
SERVER-48523 Unconditionally check the first entry in the oplog when attempting to resume a change stream
Storage
SERVER-43664 Speedup WiredTiger storage engine startup for many tables by optimizing WiredTigerUtil::setTableLogging()
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-46342 DEB installs of MDB do not issue systemctl daemon-reload on install
SERVER-50016 Fail on missing variable customization files
Internals
SERVER-43973 jsTestName() should return a unique name for each thread in the parallel suite
SERVER-45992 InMemory engine startupwarnings confusing
SERVER-46625 Improve diagnostics when mongocryptd requests are sent to non-mongocryptd daemon
SERVER-48078 Remove OpDebug invariant that relies on monotonic clock source
SERVER-48502 Tighten $currentOp and pinned cursor checks in kill_pinned_cursor.js
SERVER-49165 endSessions command in Client.Disconnect causes an authorization failure for an unauthed connection on a host that requires authentication
SERVER-49957 Read out of bounds in getPrevAndNextUUIDs
SERVER-50072 Check _isWindows() when initializing MongoRunner.EXIT_ABORT
SERVER-50123 Record number of physical cores on all platforms
SERVER-50216 Adjust sys-perf frequencies
SERVER-50365 Stuck with long-running transactions that can't be timed out
SERVER-50605 Add {logMessage: "msg"} test-only command
SERVER-50647 Fix OCSP HTTP Client timeout for Windows
SERVER-50736 Make OpenSSL explicitly accept SNIs presented in ClientHello
SERVER-50818 Coverity analysis defect 114987: Wrapper object use after free
SERVER-51004 Disable WT-Develop sys-perf build variants on sys-perf-4.2
SERVER-51058 log_remote_op_wait.js misuses rawMongoProgramOutput
SERVER-51106 Make the isMaster command a derived class of hello
SERVER-51220 Handle auditing attribution in indirect drops
SERVER-51303 Lookup stage followed by $match on type uses wrong field in matching condition
SERVER-51840 Reduce dbtest jobs on 4.2 on Windows debug
TOOLS-2588 [v4.2] sslAllowInvalidHostnames bypass ssl/tls server certification validation entirely
WT-6160 Fix format failure caused by stack overwrite
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.2.10 Changelog
Security
SERVER-50463 Make PooledLDAPConnection::refresh take self-ownership
Sharding
SERVER-37422 Log balancer start and stop events in the actionlog
SERVER-48601 ChunkSplitter should use the same chunk bounds for splitVector and splitChunk
SERVER-48679 flushRoutingTableCacheUpdates should block on critical section with kWrite, not kRead
SERVER-50889 migration_failure.js should run setFCV through the router instead of the config server
Replication
SERVER-47263 Inaccurate log message when losing dry run election
SERVER-47645 Must invalidate all sessions on step down
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-50405 Alias isMaster in mongocryptd and attach appropriate response field
SERVER-50607 Must hold mutex when calling _checkForShutdownAndConvertStatus_inlock
SERVER-50626 Race in read_concern_majority_getmore_secondaries.js
SERVER-50640 listCommands should return "isMaster" alias in addition to "hello" command name
Query
SERVER-47469 applyOps does not take exclusive lock for views operation
SERVER-50291 Add query knob to enumerate $or children in a different order
Aggregation
SERVER-31368 Log time spent waiting for other shards in merge cursors aggregation stage
SERVER-40317 $facet execution has no limit on how much memory it can consume
Operations
SERVER-26726 Check number of arguments for createIndex() and throw error if more than two arguments
Build and Packaging
SERVER-23668 scons abbreviated options do not work properly
SERVER-44632 Platform Support: Remove Community zSeries from 4.2
SERVER-47138 MSI installer produces incorrect config file
SERVER-50078 Compile bypass applied when it should not have
Internals
SERVER-42852 buildStages() STAGE_SHARDING_FILTER block should hold child stage tree by unique_ptr
SERVER-43233 Add ability to request only specific attribute(s) for the LDAP groups
SERVER-45202 Improve Command alias infrastructure
SERVER-47428 Move concurrency_sharded* Evergreen tasks to -large distros
SERVER-48048 Use resmoke tag files for multiversion blacklisting
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-49438 Allow memory.js tests to accept $where timeout interruption
SERVER-49766 Indexed and non-indexed collections return different results for null query
SERVER-49786 Freeze DSI and Genny for non-master perf projects
SERVER-49922 Make schema_validator_with_expr_variables.js less heavy
SERVER-50183 Copy _awaitPrimaryAppliedSurpassesRollbackApplied function from RollbackTest to RollbackTestDeluxe
SERVER-50326 Restrict sharding in agg_out.js workload to a single thread
SERVER-50394 mongod audit log attributes DDL operations to the __system user in a sharded environment
SERVER-50403 Build server on combined visual studio image
SERVER-50760 [v4.2] Switch MultiOplogEntrySyncTailTest to use wiredTiger
SERVER-50822 [4.2] dont_read_oplog_hole_on_step_up.js should wait for all nodes to agree on a primary
SERVER-51041 Throttle starting transactions for secondary reads
WT-6000 Enhance incremental backup testing in format to support restart
WT-6215 Clear backup block information on rename: Reverted
WT-6421 Avoid parsing metadata checkpoint for clean files
WT-6539 Fix backup and rename memory leak
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
WT-6610 Fix incremental backup checkpoint parsing to handle upgrades
WT-6611 Revert enhancement allowing rename and incremental backup
4.2.9 Changelog
Security
SERVER-47733 SymmetricEncryptorWindows shouldn't pad when update is called
Sharding
SERVER-40441 Arbiter nodes log error messages when try to create session collection or check if it exists
SERVER-46194 Applying transfer mods in a migration does not handle write conflicts
SERVER-48096 PeriodicShardedIndexConsistencyChecker thread on jstests can cause unintended shard refreshes
SERVER-48229 Shutdown PeriodicShardedIndexConsistencyChecker after ReplicationCoordinator so no thread will try to pause the job after it has stopped
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
SERVER-49311 PeriodicShardedIndexConsistencyChecker might cause failures on stale_mongos_and_restarted_shards_agree_on_shard_version.js
Replication
SERVER-44779 Invariant internal operations that hit a prepareConflict must be marked killable
SERVER-45610 Some reads work while system is RECOVERING
SERVER-47849 Add more logging to shutdownTask
SERVER-48525 Forbid dropping config.transactions when there are prepared transactions
SERVER-48527 Aborting in-progress transactions on step-up should clear session state before returning
SERVER-48576 Fix the election race in change_stream_stepdown.js
SERVER-48611 speculative_majority_find.js should call awaitLastOpCommitted before running majority read that is expected to succeed
SERVER-48712 Race in write_concern_after_stepdown.js
SERVER-48778 Make reconstruct_prepared_transactions_initial_sync.js robust to election failures.
SERVER-48967 Prevent replicated writes on empty namespaces on secondaries
SERVER-48979 Race between config propagation and election in change_stream_stepdown.js
SERVER-49471 Retry on WT_ROLLBACK when applying prepareTransaction oplog entry
SERVER-50039 Timing error in dbadmin.js test
Query
SERVER-35921 Index scan uses incorrect bounds for MinKey and MaxKey
SERVER-44273 Failure to parse certain time zone specifications on windows platforms.
SERVER-45233 Indexed inequalities to arrays return incorrect results
SERVER-47223 geoNear/$geoNear does not apply index hints
SERVER-48614 Plan cache key computation for wildcard indexes with partialIndexFilter is incorrect, leading to incorrect query results
SERVER-48950 Enhance explain for $search to expose stats from mongot
SERVER-48993 explodeForSort can produce incorrect query plan
SERVER-49527 recoverFromOplogAsStandalone does not relax index constraints
Catalog
SERVER-47714 Secondary asserts on system.profile collection with WiredTigerRecordStore::insertRecord 95: Operation not supported
Storage
SERVER-44529 Re-acquiring locks after a yield and step down results in wrong parameters on recoveryUnit
SERVER-48274 Remove readOnly mode for queryable restores of encrypted sharded clusters
SERVER-48453 Lazily initialize a record store's auto incrementing counter on deletes
SERVER-48695 setAppliedThrough must set orderedCommit=false on the recovery unit
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-46445 MongoDB MSI installer showing irrelevant error message while installing in server configuration window
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
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-41070 Add blockConnection mode to failCommand
SERVER-43490 Validate if we can perform TODO listed in SERVER-38686
SERVER-46721 Step up may cause reads at PIT with holes after yielding
SERVER-46854 Disable periodic index consistency checker on config servers in jstests/sharding/lookup_mongod_unaware.js
SERVER-47195 Allow failCommand failpoint to trigger only on a specific MongoClient
SERVER-47883 Newly-elected primaries do not wait for single-phase background index builds to complete before accepting writes
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-48058 Make sure abort_transactions_on_step_up waits for optime to be applied
SERVER-48067 Reduce memory consumption for unique index builds with large numbers of non-unique keys
SERVER-48107 Retry replSetStepDown in rollback_test.js
SERVER-48514 Separate testing 'called' and 'successful' fields for serverStatus election metrics
SERVER-48532 [4.2] IndexBuildInterceptor::areAllWritesApplied may return false despite all records being visibly applied
SERVER-48568 Use 'nodeOptions' in change_streams_multi_version_transaction.js
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-48891 nullptr dereference on ViewCatalog in reIndex when Database does not exist
SERVER-48907 Allow users to patch test changes to linkbench/linkbench2 using evergreen set-module
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-49097 sys-perf builds differ from release builds
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
SERVER-49690 Retry "CappedPositionLost" when searching for old oplog entries
SERVER-49704 txn_being_applied_to_secondary_cannot_be_killed.js should not allow elections
SERVER-50173 [v4.4] Remove explode_for_sort_collation.js from backports list of test suite sharding_multiversion
WT-6261 Turn off incremental backup rename testing
WT-6319 Fix for corrupted encrypted item: padded size less than actual size
WT-6480 Fix a bug where files without block modification information were repeatedly copied at each incremental backup
WT-6495 Refactor test_backup16.py
4.2.8 Changelog
Sharding
SERVER-40441 Arbiter nodes log error messages when try to create session collection or check if it exists
SERVER-45554 Un-blacklist core/txns from sharding test suites
SERVER-47799 AsyncRequestsSender should update replica set monitor in between retries for InterruptedAtShutdown
SERVER-47913 Redact sharding messages in split chunk and distributed lock acquisition
SERVER-48307 Transactions that write to exactly one shard and read from one or more other shards may incorrectly indicate failure on retry after successful commit
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
Replication
SERVER-46496 Retry on exceptions in reconfig_add_remove_arbiter.js
SERVER-46897 REMOVED node may never send heartbeat to fetch newest config
SERVER-47528 Presence of initialSyncStatus in replSetGetStatus consumes too much FTDC space
SERVER-47879 Should read from primary in rollback_reconstructs_transactions_prepared_before_stable
SERVER-48101 Use "j:true" when persistence is enabled in optime.js
SERVER-48250 Wait for hang in majority write before stepping down primary in write_concern_after_stepdown_and_stepup.js
SERVER-48276 ReplSet Free Monitoring URLs inconsistent
SERVER-48371 transactions_during_step_down.js must abort transaction in the shell
SERVER-48541 Fix log output on rollback of fcv document
Query
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
Storage
SERVER-43097 Improve log messaging when index builds get foregrounded because of startup recovery
SERVER-45570 Add a ProgressMeter to the index build startup recovery code path
SERVER-48384 Make PeriodicJob stop before TimestampMonitor destroy its members
Operations
SERVER-44051 getShardDistribution() does not report "Collection XYZ is not sharded" on dropped but previously sharded collections
SERVER-46189 shell hang with message "Missing ssl modes with a single replica set is disallowed
Build and Packaging
SERVER-48640 Update RHEL 6.2 AMI for package tests
SERVER-48659 Update SLES 12 AMI for package tests
Internals
SERVER-46758 setFCV can be interrupted before an fCV change is majority committed and rollback the fCV without running the setFCV server logic
SERVER-47187 Add startup warning when SeIncreaseWorkingSetPrivilege not present
SERVER-47256 Update listed maintainer for repo package files
SERVER-47611 Re-work to_local_args function using argparse
SERVER-47798 Audit isMaster response validation for mongod and mongos
SERVER-47877 Some replsets tests use arrayEq without assert
SERVER-48346 Fix lifetime issues for barriers captured by reference
SERVER-48369 Fix prepare_conflict.js to use write concern "majority" when creating an index
SERVER-48657 Use evergreen module to control signal processing in perf projects
TOOLS-2562 [v4.2] Oplog replay can't handle entries > 16 MB
TOOLS-2586 [v4.2] Write location not correctly set
WT-6366 Off-by-one overflow in block-modification bitmaps for incremental backup
4.2.7 Changelog
Security
SERVER-45514 [FLE] Reject document validators with encryption-related keywords if the validationAction is "warn"
SERVER-48039 Unrecognized option: net.ssl.clusterCertificateSelector in MongoDB v4.2
Sharding
SERVER-42632 Disable pinger threads that reach out to config server to make integration tests pass
SERVER-42772 race between TransactionCoordinatorService::joinPreviousRound and coordinator destruction can trigger invariant
SERVER-43100 Remove CoordinateCommitReturnsNoneIfCoordinatorWasRemoved unit test
SERVER-45009 Transaction coordinator tasks should be robust to shutdown failing to step down
SERVER-46396 Add metrics to track number of operations blocked behind a catalog cache refresh
SERVER-46487 The mongos routing for scatter/gather ops can have unbounded latency
SERVER-47481 Set minNumChunksForSessionsCollection to 1 on the CSRS in ShardedClusterFixture-based suites
SERVER-47745 Make chunk query in ShardingCatalogManager compatible with chunks created in 3.4
SERVER-47999 balance_repl.js should ensure writes have replicated before attempting to read them from a secondary
Replication
SERVER-38731 Ability to specify sync source read preference in initial sync
SERVER-47190 Shutdown command with force:true should ignore all stepdown errors
SERVER-47613 Invariant in processReplSetRequestVotes
SERVER-47622 replSetReconfig.js should check ismaster before running the reconfig command
SERVER-47695 Write commands run by threads that can survive rollback can fail operationTime invariant in ServiceEntryPoint
SERVER-48046 {replSetFreeze: 0} done in RollbackTest.restartNode() should be resilient of network errors
Query
SERVER-46810 Broken E11000 duplicate key error when unique index contains collation
Aggregation
SERVER-46819 Allow transactions in change stream sharded passthroughs
SERVER-47581 mongoS does not set 'useNewUpsert' on $mergeCursors pipelines [4.4, 4.2]
Storage
SERVER-44577 Ensure WiredTiger cursors have started a transaction before reading data
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
SERVER-47462 Remove 'SetIndexCommitQuorum' command support from mongoDB 4.2
Operations
SERVER-45295 Make sure that LDAP logs always contain context on AuthZN operation
SERVER-47553 mongos crashes due to client disconnecting when signing keys being refreshed
Build and Packaging
SERVER-44072 Platform Support: Add Enterprise RHEL 8 PPC
SERVER-48094 Add RHEL 8.1 to repo_config yaml
Internals
SERVER-42927 Increase verbosity of symbol loading in hang_analyzer.py on Windows
SERVER-43468 Complete TODO listed in SERVER-38690
SERVER-45117 Guard NetworkInterfaceTL::setAlarm() more aggressively
SERVER-45624 Pre-split and distribute chunks of sessions collection
SERVER-46633 Windows TLS implementation may declare hostname mismatch on unrelated error
SERVER-46684 Repackage the hang-analyzer as a resmoke subcommand
SERVER-46769 Migrate from optparse to argparse
SERVER-46841 Make PeriodicRunner interrupt blocked operations on stop
SERVER-47056 Do not use readOnce cursors for collection scan in initial sync
SERVER-47063 Upgrade static OpenSSL to 1.1.1e
SERVER-47071 CheckReplOplogs can fail to detect a mismatch
SERVER-47264 Backport DocumentSourceBucketAuto::optimize() function to 4.2
SERVER-47351 Better synchronize NetworkInterfaceTL shutdown with in-flight commands
SERVER-47373 Improve handling of empty TLS packets
SERVER-47429 authenticationMechanisms parameter is not validated
SERVER-47475 Make PeriodicJob aware of cancelation at global shutdown
SERVER-47507 Cancel all remaining egress commands on shutdown
SERVER-47623 Fix use-diagnostic-latches=off on v4.2
SERVER-47633 Add uses_transactions tag to index_build_yield_prepare_conflicts.js
SERVER-47634 Make metric tests in stepup.js more robust
SERVER-47668 Update fCV documentation links to 4.2 in feature_compatibility_version_documentation.h
SERVER-47685 Remove fetch_and_build_openssl.sh from master branch
SERVER-47893 Add test confirming that variables defined above a $graphLookup are available for use
SERVER-47919 Don't expose --suite option in find-suites; use set_default instead
SERVER-47940 Add space between resmoke.py and run in powertest
SERVER-48005 Reduce parallelism on Ubuntu 1804 ARM
TOOLS-2526 [v4.2] mongorestore may incorrectly validate index name length before calling createIndexes
TOOLS-2532 [v4.2] mongorestore hangs on invalid archive
WT-4954 Document duplicate backup cursors
WT-5212 Backup data validation tests
WT-5214 Verify potential incremental failures
WT-5246 Update WiredTiger backup documentation
WT-5589 force_stop on duplicate cursor open not returning error
WT-5624 Incremental unit test should use offset/length ranges
WT-5695 Fixed incremental backup example to use O_CREAT in the backup range case
WT-5697 Dropping or renaming tables returns EBUSY in incremental backup test
WT-5699 Refactor incremental backup RANGE code
WT-5719 Incremental backup metadata should quote the ID string
WT-5722 Incremental backup should do a name check on identifiers
WT-5834 Incremental backup returning too large offset
WT-5914 Only configure log-incremental backup if archiving is off in test/format
WT-5989 Support arguments in workgen
WT-5999 Update format so it's possible for it to restart on an existing database
4.2.6 Changelog
Security
SERVER-45803 mongodecrypt needs a ServiceContext
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-32871 ReplicaSetMonitorRemoved and ShardNotFound errors on fanout query after removing a shard
SERVER-41278 FSM killSession helper should not kill sessions being run by background hooks
SERVER-41777 Make multi_mongos2.js awaitReplication after sharding a collection
SERVER-42304 Load causal consistency override in sharded_collections_causally_consistent_jscore_txns_passthrough
SERVER-42827 Allow sessions collection to return OK for creating indexes if at least one shard returns OK and others return CannotImplicitlyCreateCollection
SERVER-42862 Prevent shard refreshes in mergeChunks command from joining earlier refreshes
SERVER-43848 find/update/delete w/o shard key predicate under txn with snapshot read can miss documents
SERVER-44115 Exclude jstests/core/autocomplete.js from sharded jscore tests
SERVER-44463 insertConfigDocumentsAsRetryableWrite() incorrectly calculates BSON array overhead
SERVER-45119 CollectionShardingState::getCurrentShardVersionIfKnown returns collection version instead of shard version
SERVER-45389 Add metrics tracking how often shards have inconsistent indexes
SERVER-45910 Router might target wrong shard on write operation for unsharded collection
SERVER-46084 Don't use $setUnion in aggregation for finding inconsistent sharded indexes
SERVER-46307 database_versioning_safe_secondary_reads.js should not set "votes: 0" on the shard secondaries
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
Replication
SERVER-33627 Initial syncer needs to handle exception
SERVER-35437 Wait for secondary state after stepdown command in multi_rs.js
SERVER-46517 Stepdown changes the underlying state of canAcceptWrites() out of RSTL X mode
SERVER-47109 Race in replset1.js from two-phase index build
Query
SERVER-40805 Indicate the reason for replanning in the log file
SERVER-45147 "Ghost" timestamp must set transaction to unordered
SERVER-46872 yield_with_drop.js FSM workload should permit upserts to fail with NoProgressMade
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-44507 Hybrid index build is able to commit (acquire stronger mode locks) for a collection that contains prepared documents. (4.2 only)
SERVER-46468 The validate command may generate overlong responses
SERVER-46865 collMod should not take database MODE_X lock
SERVER-47006 Implement a downgrade floor between 4.4 and 4.2
SERVER-47425 When 4.2 discovers log version 4 records on startup, continue to write log version 4 records
Operations
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-43231 Add support for releasing mqlrun artifacts for certain Ubuntu LTS versions
SERVER-46996 all push/publish_packages tasks should run on small hosts
Internals
SERVER-15902 use signal handling stack via sigaltstack to improve behavior on stack overflow
SERVER-38119 Windows dump file naming does not account for dots in directory names
SERVER-39241 Plan scoring incorrectly applies noFetchBonus bonus to all plans when no projection is provided
SERVER-41160 Add shutdown method for CatalogCacheLoader
SERVER-42278 Log SockAddrs produced during LDAP connection establishment with manually derived sizes
SERVER-42455 ReplicaSetChangeNotifier::onConfirmedSet is unsafe during shutdown
SERVER-42525 Single-node replica sets shouldn't wait for electable caught up secondaries during shutdown
SERVER-43011 Add optional namespace restriction to failCommand failpoint
SERVER-43732 burn_in_tests did not detect changes in core
SERVER-43889 Distinguish between a retryable write and a transaction when failing a command
SERVER-45143 Missing expected field "protocolVersion", but that field has a default value
SERVER-45334 Service Name not respected in MSI Installer
SERVER-45508 Invariant failure in getFieldsWithStringBounds with descending point ranges
SERVER-45525 ReplBatcher should explicitly read at kNoTimestamp
SERVER-45835 Add optimized Linkbench to Sys-perf as a new task
SERVER-45881 Investigate and implement desired Flow Control throttling for multi-document transactions
SERVER-46135 Create selected_tests alias
SERVER-46362 Make set_step_params test tolerate sporadic connections
SERVER-46410 Validate should check for duplicate keys in unique indexes
SERVER-46439 Add acceptance tests for burn_in_tags
SERVER-46501 Add /proc/self/mountinfo to hostInfo response
SERVER-46851 Decrease the number of jobs in logical session cache tests
SERVER-46861 Update perf.yml to use the updated genny invocation
SERVER-46980 Add multiversion* expansions to Enterprise RHEL 7.0 builder in v4.2
SERVER-47080 Enable verbose logging for LDAP tests
SERVER-47114 Make ldapproxy.py use IOCP on Windows
SERVER-47174 mozjs third party code folder is ignored by git
SERVER-47193 createIndexes command accepts "commitQuorum" option on 4.2 servers
SERVER-47384 Remove TODO comment for SERVER-41070
SERVER-47407 Avoid WriteUnitOfWork in index build collection scan loop
WT-5669 Prepare support with durable history: backport data format changes to 4.2
WT-5866 Remove history store file when downgrading to 4.2
WT-5892 Bump log/WT version to facilitate downgrade floor for MongoDB 4.2
WT-5934 Stop validating timestamps read from disk in 4.2
WT-5966 4.4 downgrade can result in 4.2 core dumps if cells are ignored
4.2.5 Changelog
Sharding
SERVER-45770 Add to information contained in logfile about "moveChunk.to"
Storage
SERVER-46858 [4.2] Start WT in read only mode if the 'recoverToOplogTimestamp' flag is missing for queryable backup
Build and Packaging
SERVER-46983 Upload repobuilding packages to correct URL
Internals
SERVER-45043 Fix SSL test failure on Ubuntu
SERVER-45156 SockAddr constructor should take sockaddr, not sockaddr_storage
SERVER-46126 LDAP proxy and mongod startup race in ldap_insuffcient_access_rights.js
SERVER-46630 RemoveSaver writes GCM tag to incorrect file position
SERVER-46746 Add sysbench large scale workload to sys-perf for durable history testing
SERVER-46754 Use new repobuilder service
SERVER-46766 Teardown clusters after every perf run
4.2.4 Changelog
Sharding
SERVER-42617 Race in CloneDocumentsCatchesInsertErrors can causes it to return an unexpected error
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
SERVER-44839 Frequent schema changes in mongos ftdc metrics limits retention period
SERVER-44915 Extend $indexStats output to include full index options and shard name
SERVER-45273 Remove the mongos version check in allow_partial_results.js and return_partial_shards_down.js
SERVER-46001 Move checkShardingIndex outside shardCollection's read critical section on the primary shard
SERVER-46121 mongos crashes with invariant error after changing taskExecutorPoolSize
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-38028 Participant with prepared transaction on session should block request for higher txn number on session rather than failing the new request
SERVER-39112 Primary drain mode can be unnecessarily slow
SERVER-43867 Work around unrecoverability of rollback via refetch in tests
SERVER-44260 Transaction can conflict with previous transaction on the session if the all committed point is held back
SERVER-45010 Clean shutdown after rollbackViaRefetch with eMRC=false can cause us to incorrectly overwrite unstable checkpoints
SERVER-45178 Rollback via refetch can cause rollback to happen successfully w/o updating the rollback id.
SERVER-45421 Fix transactions_block_ddl.js to use write concern "majority" for commands run as part of setup phase.
SERVER-45492 Tag rollback_dup_ids.js with 'requires_persistence' and 'requires_journaling'
SERVER-45493 temporarily disable failing assertion in election_candidate_and_participant_metrics.js
SERVER-45612 Remove the mapReduce + prepare testing in 4.2 concurrency_simultaneous_replication suite
SERVER-45839 recoverFromOplogUpTo should not invariant if there are no oplog entries to apply between the given range
SERVER-45840 Blacklist tests that run emptycapped from replica_sets_kill_secondaries_jscore_passthrough
SERVER-45842 Remove assertion that checks whether the last applied oplog entry has the same timestamp as the requested recover timestamp in recoverFromOplogUpTo
SERVER-45906 Initial stable checkpoint not triggered properly when enableMajorityReadConcern=false
SERVER-46050 Use getLastAppliedOpTime rather than getHeartbeatAppliedOpTime for checking primary's position
SERVER-46188 Blacklist write_conflicts_with_non_txns.js from sharded transaction passthrough suites due to maxTimeMS incompatibility
SERVER-46218 Race between removal and shutdown in arbiter
Query
SERVER-32903 Ambiguous field name error should be ignored during initial sync
SERVER-45279 GranularityRounder can get stuck in loop when rounding infinity
SERVER-45363 Issue with mongodb text indexes and weights when using wildcard specifier
SERVER-45927 Alias for Atlas FTS
Write Operations
SERVER-45611 Lazily enforce that persisted collection validators are well formed
Aggregation
SERVER-40603 Perform more thorough review/audit of new mongohouse DocumentSources
SERVER-44942 $out will hit invariant if temp collection is dropped before indexes are copied from source collection
SERVER-45418 DocumentSourceCursor batching memory accounting does not account for empty documents, leads to unbounded memory use for count-like aggregates
Catalog
SERVER-45137 Increasing memory allocation in Top::record with high rate of collection creates and drops
Storage
SERVER-41968 IndexBuildTest.getIndexBuildOpId() not selective enough when IndexBuildsCoordinator is enabled
SERVER-42830 Applying a rename operation can result in multiple WT transactions
SERVER-43794 Change MongoDB backup cursor API to include offset/length ranges
SERVER-44370 Have openBackupCursor accept inputs for incremental backup requests
SERVER-44406 Add $backupCursor API to forcefully disable incremental backups
SERVER-44407 Connect the incremental backup cursor pipes with WT output.
SERVER-44410 Change backup cursor results to include a filesize
SERVER-44426 Have queryable backup mode forward FS write calls to the backend API
SERVER-44433 Have queryable backup mode forward file opening/creation calls to the backend API
SERVER-44438 Have queryableBackupMode open WT in read/write mode
SERVER-44442 Allow queryableBackupMode to perform replication recovery
SERVER-45006 LockerImpl::wasGlobalLockTaken() always returns true
SERVER-45007 PBWM acquisition in GlobalLock constructor ignores deadline
SERVER-45288 switch Idempotency tests to use WiredTiger instead of ephemeralForTest
SERVER-45289 Conditional jump or move depends on uninitialised value(s) in validate_adaptor.cpp
SERVER-45374 Unique index that gets rebuilt as part of startup recovery/repair is using data format version as 6 or 8 and NOT 11 or 12.
SERVER-45481 Change the backup API to return the blocks to copy for incremental backup
SERVER-45581 Change the incremental backup API to allow block size granularity to be specified
SERVER-45660 Remove blockSize from queryable backup
SERVER-45663 Implement file renaming for queryableBackupMode and fix file size tracking
SERVER-45821 Re-enable disabled incremental backup cursor tests and add additional tests
SERVER-46010 Incremental backups should remain viable across replication rollback on the backup source
SERVER-46366 Append the backup cursors user arguments to the metadata document
SERVER-46375 Include the offset, length pair for files as part of the first full backup for incremental
SERVER-46488 queryableBackupMode should recover from the journal files on startup using the recovery timestamp
SERVER-46565 Extend ESE backup tests to use $extendBackupCursor
Operations
SERVER-45662 Flow Control currentOp timeAcquiringMicros stat is no longer updated
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
SERVER-45879 No Builds Produced for s390x Ubuntu 18.04 for 4.2.3
SERVER-45922 Build failure in overflow_arithmetic.h: constexpr function never produces a constant expression
Tools
TOOLS-2430 mongorestore: in dotted index keys, replace "hashed" with "1"
Internals
SERVER-37148 Remove mr_shard_version.js and mr_during_migrate.js in favor of MR FSM test
SERVER-41872 PlanEnumerator AndAssignment::choices ordering not stable and is relevant to set of plans generated
SERVER-42930 ConnectionPool controller updates must batch across hosts
SERVER-43308 Invariant failure in mqlrun: doc.value().isOwned()
SERVER-43339 PBWM locks acquired part of GlobalLock::GlobalLock() should be interruptible. Else, it won't respect MaxTimeMS.
SERVER-43470 Complete TODO listed in SERVER-35156
SERVER-43726 Make ssl_alert_reporting.js tolerate LEGACY crypto policy on RHEL8
SERVER-43763 Figure out if global LDAP synchronization can be disabled when libldap is built with OpenSSL.
SERVER-43971 MQLRUN crashes if pipeline is specified in file
SERVER-44325 Add polyfill for certificate chain verification
SERVER-44435 Allow x509 authorization to be selectively enabled based on the CA
SERVER-44620 Fix sslProviderSupports helpers on Debian 10
SERVER-44853 MSI Should skip install MongoD service dialog when mongod is not selected to be installed
SERVER-44904 Startup recovery should not delete corrupt documents while rebuilding unfinished indexes
SERVER-45261 create more state in NiTL ctor
SERVER-45486 Add information to debug index key count mismatch issue in 'hashed_index_bad_keys_cleanup.js'
SERVER-45544 burn_in_tests for certain tests can time out regardless of what changed
SERVER-45546 Do not create HostPools for passive members
SERVER-45644 Reevaluate timeouts used by burn_in_test
SERVER-45726 Allow empty firstBatch with TaskExecutorCursor
SERVER-45748 burn_in_tags_bypass_compile is not looking at the correct task
SERVER-45764 Generate resmoke tasks need to take setup time into account when setting timeouts
SERVER-45766 Remove "requires" from the server yaml
SERVER-45825 Disable tool_replset for ephemeralForTest storage engine
SERVER-45867 Use latest version of signal processing
SERVER-46003 Send "search" internally from mongod to mongot instead of "searchBeta"
SERVER-46082 Use bin/analysis.py for performance projects
SERVER-46174 Free peer certificate in SSL_get0_verified_chain polyfill
SERVER-46197 Make build flag to disable diagnostic latches
TOOLS-2461 Backport mongorestore hashed index fix to 4.2
WT-4886 Avoid depending on particular error message text for test_bug018
WT-4968 Remove all_committed timestamp
WT-4999 Migrate Jenkins “wiredtiger-test-format-stress-zseries” job to Evergreen
WT-5003 Migrate Jenkins “wiredtiger-test-race-condition-stress-sanitizer” job to Evergreen
WT-5024 Migrate Jenkins “wiredtiger-compatibility” job to Evergreen
WT-5041 Distribute modifications properly in test_calc_modify.py
WT-5081 Add support for ASan builds in the Python test suite
WT-5119 Birthmark records can be read as normal updates if reads race with checkpoints
WT-5159 Make wiredtiger work with SWIG 4.0.0 beyond
WT-5165 Add cursor copy debug mode
WT-5192 Don't allow checkpoints to evict without a snapshot
WT-5199 Adding correctness tasks into rhel80 Evergreen build variant
WT-5206 Return the correct checkpoint-modified list of blocks
WT-5235 Craft a workload to show lookaside contention
WT-5255 Turn off external programs if direct I/O is configured for test/format
WT-5261 coverage-report task timed out in Evergreen
WT-5334 Add testing coverage for static wt build
WT-5366 read-committed and read-uncommitted transactions can stall eviction
WT-5371 Fix test_stat08.py assertion failure
WT-5372 Skip known errors for long-running format stress sanitizer tasks
WT-5376 WT_UPDATE.type field can race with visibility checks when returning key/value pairs
WT-5377 variable-length column store insert locking in format test program can stall eviction
WT-5379 Missing varargs cleanup
WT-5380 Stat clear is not clearing the proper lookaside cursor stats
WT-5383 Update WiredTiger source code to include 2020 copyright notices
WT-5387 Prepared transaction resolution can stall eviction on active pages
WT-5393 Prepared transaction rollback and API error handling fixes
WT-5395 Fix a bug in the read lock implementation when there is a lot of contention
WT-5398 Adding more correctness tasks into rhel80 Evergreen build variant
WT-5405 Make format LSM test a separate Evergreen task
WT-5410 WiredTiger formatted timestamp string buffer size is too small
WT-5437 Salvage's excessive consumption of cache memory causing eviction to stall
WT-5440 __wt_txn_clear_read_timestamp() has an unnecessary serialization point
WT-5442 Fix failure in test_shared_cache01.py
WT-5443 Disable PPC format tests in Evergreen
WT-5444 Re-enable PPC format tests in Evergreen
WT-5445 Handle relative "home" directories in format.sh
WT-5449 Increase contention in history store stress workload
WT-5450 Support timeout setting for long-running operations in test/format
WT-5458 Fix Evergreen timeout failures in linux-directio test
WT-5460 Buffer alignment failure captured by linux-directio test
WT-5468 Improve documentation for "wt load"
WT-5480 Don't take threads resolving prepared transactions to assist with eviction
WT-5488 Dump the failing CONFIG for Evergreen test/format tasks
WT-5521 Cache stuck during format initial load, configured with library checkpoints
WT-5534 Incremental backup needs to accept older metadata
WT-5536 Add zstd as a builtin compressor for WiredTiger Python package
WT-5537 Use correct WT_ITEM fields per memory sanitizer
WT-5538 Change format to ignore Evergreen timestamps in configuration files
WT-5553 Return error if primary cursor is not an incremental source
WT-5554 Account for logpath when retrieving file size in incremental backup
WT-5564 Buffer not extended properly when incremental bitstring grows
WT-5584 Change format to ignore Evergreen timestamps in configuration files
WT-5587 Limit how many checkpoints are dropped by a subsequent checkpoint
4.2.3 Changelog
Security
SERVER-44922 User acquisition shouldn't increment cache generation
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-40435 A clearJumboChunk command to clear the jumbo flag
SERVER-42914 Implement random chunk selection policy for balancer for use in concurrency_*_with_balancer workloads
SERVER-43195 Add namespace to ChunkManager ShardKeyNotFound failure in order to better diagnose failures.
SERVER-43960 sharding_balance4.js should wait for ongoing chunk splits between updates
SERVER-44341 Do not choose only first shard of all shards associated with a zone when pre-splitting during shard collection
SERVER-44598 Shards do not treat the IGNORED version as "intended sharded"
SERVER-45100 Make the BatchWriteExecutor retry multi-writes only against unsuccessful shards
SERVER-45272 Remove assertions about the last-stable behavior in allow_partial_results.js and return_partial_shards_down.js
Replication
SERVER-35407 ReplicationCoordinatorExternalState and data replication must not be started after shutdown
SERVER-37390 RollbackTestFixture doesn't need to wait for a new primary if it didn't shut down the current primary
SERVER-42825 Log metrics.repl.stepDown counters after stopped killing user operations as part of state transition (step up/ step down).
SERVER-43875 Initial sync may crash due to missing oplog entries of running transactions
SERVER-43978 Stable timestamp is not being recalculated after aborting oplog holes
SERVER-44061 Race while setting replication maintenance mode.
SERVER-44503 Race in replsets/auth2.js
SERVER-45155 Write the temp file of rollback file dump in the test's db directory
SERVER-45270 Increased vulnerability to slow DNS
SERVER-45350 Use awaitMajorityCommitted in standalone_replication_recovery_idempotent.js
SERVER-45396 fix the "me" field in isMaster responses when using splithorizon
Query
SERVER-32567 Replace queryoptimizer3.js with FSM test
SERVER-41263 Disallow the empty string as an index key type
SERVER-42565 Aggregations and find commands sort missing fields differently
SERVER-44977 Allow change stream with updateLookup to run directly against a shard mongoD in a sharded cluster
SERVER-44984 Reduce index thread pool size and reduce memory used per build
SERVER-45152 Negation of inequality on array can trip invariant
Aggregation
SERVER-43764 Add more testing for special values in DoubleDoubleSummation
SERVER-44174 $push and $addToSet should restrict memory usage
SERVER-44733 Explicitly return a stream-fatal error in cases where a change stream cannot be automatically resumed
SERVER-44869 Add query knob to control memory limit for $push and $addToSet
SERVER-45177 Not-equal ($ne) in query for mapReduce causes segmentation fault
Storage
SERVER-28977 Coverity analysis defect 101508: Data race condition
SERVER-42183 Check for duplicate namespaces when dumping catalog
SERVER-43018 Formalize contract for safely accessing the catalog
SERVER-43910 include Client/OpCtx information in LockManager::dump() output
SERVER-44619 BtreeKeyGenerator::_extractNextElement() uassert message exceeds 16mb BSON document limit when added to a command result
SERVER-44796 Adjust nojournal startup warning to be more compelling
WiredTiger
SERVER-44991 Performance regression in indexes with keys with common prefixes
Operations
SERVER-44044 Remove unused second parameter from KeyVault.createDataKey()
SERVER-45290 Remove upstream metadata from v4.2's third party library manifest
Build and Packaging
SERVER-44546 Remove mobile specific build and code artifacts
SERVER-44550 Remove mobile specific embedded commands
SERVER-44557 Set an explicit default for the SCons MSVC_VERSION flag
SERVER-45346 Ubuntu 18.04 package testing task fails to install openssl
Tools
TOOLS-1952 Use --forceTableScan by default when running against WiredTiger nodes
TOOLS-2422 admin.tempusers is not dropped by mongorestore
TOOLS-2423 mongorestore does not drop admin.tempusers if it exists in the dump
TOOLS-2425 Backport 'TOOLS-2403 mongorestore hang while replaying last oplog failed in archive mode'
TOOLS-2436 Backport TOOLS-2422 and TOOLS-2423
TOOLS-2451 Backport TOOLS-1952 to 4.2
TOOLS-2453 Index keys not escaped correctly
TOOLS-2454 Backport TOOLS-2453
Internals
SERVER-34844 Relax expectations in apply_batches_totalMillis
SERVER-42573 Only warn about readConcernMajority enabled in primary-secondary-arbiter configuration
SERVER-42631 Blacklist tests that use Mongo.logout() from stepdown suites
SERVER-42697 Expose tcmalloc_release_rate via setParameter
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-43310 mongos tries to connect to the secondary to create the index if
rs.slaveOk()
is set.SERVER-43324 Add BasicLockableAdaptor for cleaner function APIs
SERVER-43349 Incorrect serialization for $elemMatch $not $ne
SERVER-43623 Stop catching exceptions in NetworkInterfaceASIO
SERVER-44430 Fix tls_enumerators.py from BF-14793
SERVER-44464 Add new "one-click" genny workload tasks to system_perf.yml
SERVER-44477 Map reduce with mode "merge" to an existing sharded collection may drop and recreate the target if no docs exist on the primary shard
SERVER-44527 Map reduce to an existing sharded collection can incorrectly create new collections on target shards
SERVER-44568 Update the embedded version of the server's timezone data file to tzdb-2019c
SERVER-44595 Linux shutdown of mongod sometimes never completes
SERVER-44775 Make FailPoint::pauseWhileSet increment _timesEntered once
SERVER-44828 Correct logic to re-compute dependencies after absorbing a $sort into query layer
SERVER-44964 [4.2] Calculate index build memory usage per key based on BSONObj buffer capacity, not size
SERVER-45050 Change Windows Kerberos client to use default credentials when no password is specified
SERVER-45180 Use longer retry for kms service
SERVER-45320 Remove evergreen client from buildscripts
SERVER-45472 Ensure RoleGraph can serialize authentication restrictions to BSON
SERVER-45698 Remove Jasper smoke tests from sys-perf
TOOLS-2424 Backport 'TOOLS-1826 mongorestore panic in archive mode when replay oplog failed'
WT-4919 Add debug mode which allocates exact amount of memory in __wt_realloc_def
WT-4921 Add debug mode option that slows checkpoint creation
WT-4969 Remove lsm_merge configuration option
WT-4996 Migrate Jenkins “wiredtiger-test-check-long” job to Evergreen
WT-4997 Migrate Jenkins “wiredtiger-test-format-stress” job to Evergreen
WT-4998 Migrate Jenkins “wiredtiger-test-format-stress-ppc” job to Evergreen
WT-5000 Migrate Jenkins “wiredtiger-test-format-stress-sanitizer” job to Evergreen
WT-5004 Migrate Jenkins “wiredtiger-test-checkpoint-stress” job to Evergreen
WT-5005 Migrate Jenkins “wiredtiger-test-recovery-stress” job to Evergreen
WT-5006 Migrate Jenkins “wiredtiger-test-split-stress” job to Evergreen
WT-5037 Move Application Developer Resources documentation in github to WT documentation
WT-5044 Log more information when timestamp usage issue is encountered
WT-5047 Always return WT_TRY_SALVAGE for corrupted log
WT-5077 Handle ENOENT without failure when copying the directory
WT-5082 Application threads are tasked with eviction even when pinning the oldest transaction ID
WT-5090 Log a message when rolling a thread back because it holds the oldest timestamp
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-5139 WiredTiger incremental backup API
WT-5221 Bypass test_wt2853_perf in Evergreen make-check-msan-test
WT-5232 Create a wrapper script to support format stress tests in Evergreen
WT-5257 Coverity analysis bug: 113971 Dereference after null check
WT-5263 Prepared updates written to the lookaside file are not always read as needed
WT-5274 format.sh must handle core-dump signals and "gdb attach" build mode
WT-5276 test/format needs to move the oldest timestamp forward during bulk load
WT-5277 Cursor key out-of-order detected in the lookaside file
WT-5288 format.sh must distinguish format timeouts and kill child processes
WT-5305 format.sh must handle format's use of the wt utility
WT-5309 Update format.sh script to add prefix command argument
WT-5311 Format timestamps identically to MongoDB
WT-5312 Add thread doing random cursor operations to format's cache size calculation
WT-5314 Avoid loading extensions that have blank name for Python tests
WT-5319 Avoid clearing the saved last-key when no instantiated key
WT-5324 WiredTiger API error handling fixes
WT-5327 Backup cursor API can fail to restore WT_SESSION name information
WT-5330 Read-only transactions are being rolled back in MongoDB
WT-5360 Add a template for building a glossary in developer docs
WT-5365 Remove format's long-running transaction support
4.2.2 Changelog
Security
SERVER-43090 Fix LDAP connection health tests with Okta
SERVER-43640 The user cache invalidator invarianting in it's dtor decreases debuggability
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-39332 Prevent test from dropping collections directly against a shard
SERVER-41480 Increment collection major version on chunk splits/merges
SERVER-42737 MongoDB stuck on update metadata
SERVER-42769 ShardingTest should call awaitLastOpCommitted after enableAutoSplit
SERVER-43337 handle errors that occur on the shard when findAndModify is converted to a transaction.
SERVER-44113 Refresh metadata for correct namespace in transactions_reject_writes_for_moved_chunks.js hashed case
SERVER-44261 Replace waitForFailpoint function with waitForFailPoint command
SERVER-44289 Retryable writes that change shard key value and owning shard that include write concern fail with InvalidOptions
SERVER-44476 Include number of jumbo chunks remaining in output of removeShard
Replication
SERVER-40372 Track transaction size on 4.2+
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-42025 Prevent Oldest timestamp from advancing in prepare_transaction_read_at_cluster_time.js.
SERVER-42366 When EMRC=false we may set the stable timestamp ahead during rollback after forcing it back to the common point
SERVER-42925 idempotency tests have oplog visiblity issues
SERVER-43239 numCatchUpOps in repSetGetStatus is incorrect
SERVER-43703 Race when disabling rsSyncApplyStop failpoint and stopping server
SERVER-43729 replSetFreeze done part of RollbackTest.transitionToSyncSourceOperationsDuringRollback Should be resilient of errors.
SERVER-43972 initial_sync_capped_index.js should check SECONDARY state before running validate
SERVER-44259 rollback_after_enabling_majority_reads.js test should wait for restarted node to be in SECONDARY state before running stepUp command
SERVER-44373 recover_multiple_prepared_transactions_startup.js test should wait for majority commit point to advance before committing a prepared transaction
SERVER-44457 Update backports_required_for_multiversion.yml on v4.2 with completed list of multiversion test suites
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
Query
SERVER-43338 [4.2] Dropping an admin.system.* index in fCV 4.0 can invariant on startup
SERVER-44026 Remove global X lock for reIndex
SERVER-44050 Arrays along 'hashed' index key path are not correctly rejected
SERVER-44269 Modernize max_time_ms.js
SERVER-44377 Invariant failure on indexed inequality to null
SERVER-44571 Documents involved in SERVER-44050 corruption scenario cannot be updated or deleted after upgrade
SERVER-44617 $regexFind crash when one of the capture group doesn't match the input but pattern matches
Aggregation
SERVER-43034 Special values handling is inconsistent in DoubleDoubleSummation
SERVER-43860 Pipeline style update in $merge can produce unexpected result
Catalog
SERVER-43402 Secondary oplog can have entry to create a same name but different capitalized database before dropping the old one
SERVER-43880 renameCollection across DBs uses unowned RecordData after cursor has been yielded
Storage
SERVER-33272 The DatabaseHolder::close() function no longer requires a global write lock and neither does the dropDatabase command.
SERVER-43152 remove twoPhaseCreateIndexes test command
SERVER-43882 Building indexes for startup recovery uses unowned RecordData after yielding its cursor
SERVER-43908 Modify IndexConsistency hash-map keys to avoid hitting an invariant on duplicate index keys in KeyString form for different indexes
SERVER-44239 Ensure the parallel shell in lock_stats.js finishes successfully to record the server status properly
SERVER-44612 recoverFromOplogAsStandalone with takeUnstableCheckpointOnShutdown should succeed if retried after a successful attempt
SERVER-44744 Remove antiquated code from queryable_mmapv1 days.
SERVER-44755 Change assertion number in wt_missing_file_errors.js
Operations
SERVER-42886 Fix
bypassAutoDecrypt
settings in shellSERVER-43265 Mongo Shell exits with InvalidOptions error when using URI compressors parameter
SERVER-43884 Improve Error Formatting for mongocryptd-origin errors
Build and Packaging
SERVER-44177 Reduce frequency of exotic build variants
SERVER-44392 Platform Support: Remove zSeries ubuntu 16.04
SERVER-44398 Disable multiversion tests on Suse 15
SERVER-44545 Remove builders for Embedded SDKs on Mobile Platforms
SERVER-44579 Pin pywin32 python module
SERVER-44687 error: 'operator delete' is unavailable: introduced in macOS 10.12
Tools
TOOLS-2380 mongodump fails against hidden node with authentication enabled
Internals
SERVER-39165 Add waitForFailpoint command
SERVER-39993 Add kill and terminate versions of concurrency step down suites
SERVER-40667 MongoD Storage watchdog should treat unexpected interruption as process-fatal
SERVER-41140 All usages of MultiIndexBlock should ensure callers check for duplicate key constraints
SERVER-42393 Race in setting failpoint during wt_file_helper.js assertStartInReplSet
SERVER-42576 Decrease the number of concurrent jobs from 4 to 2 in the logical_session_cache_* suites
SERVER-42688 M/R Agg: Fix performance tests to run with valid options on new mapReduce
SERVER-42748 M/R Agg: Support using stored procedures (system.js) in map/reduce arguments
SERVER-42790 Change ConnectionPool's kDiagnosticLogLevel from 3 to 4
SERVER-42818 M/R Agg: ensure mapReduce on a non-materialized view fails with a sensible error message
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-43213 agg_out_interrupt_cleanup.js shouldn't use inherited 'query' state
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-43579 AWS KMS support needs to be robust to KMS availability
SERVER-43693 Reduce probability of collMods in create_index_background_unique_collmod* workloads
SERVER-43749 Modernize mapReduce tests in core other than those covered by SERVER-42690
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-43987 Require predicates with OperationContext::waitForConditionOrInterrupt()
SERVER-44006 Change Packaging License from AGPL to SSPL
SERVER-44009 Upload pip freeze output for sys-perf and microbenchmarks
SERVER-44027 Remove global X lock for renameCollection between DBs
SERVER-44028 Remove global X lock for Cloner
SERVER-44029 Remove global X lock for replSetResizeOplog
SERVER-44064 Perform explicit cast on MessageCompressorManager parameter
SERVER-44119 Fix string coersion in default SetParameter::set(BSONElement) handler
SERVER-44183 Failure to listen on an asio socket should be fatal
SERVER-44287 MR Agg: Relax mapReduce IDL to ignore 'jsMode' option and change mapReduce parser to allow 'nonAtomic: true' and disallow 'out.sharded: false'
SERVER-44310 Make waitForFailPoint command require maxTimeMS
SERVER-44312 Specify evergreen auth in performance tests for signal processing
SERVER-44319 Skip keyfile check in replica_sets/auth1.js on windows
SERVER-44578 Remove unused db_raii and server_status libs from storage_wiredtiger_core's LIBDEPS_PRIVATE
SERVER-44651 Update signal processing version
SERVER-44721 Shell KMS AWS support cannot decrypt responses
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)
WT-4486 Number of syncs did not increase in dirty max test
WT-4565 Fix tree walk code with read-no-wait flag set
WT-4702 Switch to ubuntu1804-test Evergreen distro
WT-4715 Workloads will stall if old transaction or timestamp pinned by thread co-opted for eviction
WT-4961 Checkpoints with cache overflow must keep history for reads
WT-4976 Migrate Jenkins “wiredtiger-pull-request-builds” job to Evergreen
WT-4983 Migrate Jenkins “wiredtiger” job to Evergreen
WT-4987 Migrate Jenkins “wiredtiger-test-checkpoint” job to Evergreen
WT-4988 Migrate Jenkins “wiredtiger-test-unit” job to Evergreen
WT-4989 Migrate Jenkins “wiredtiger-test-unit-long” job to Evergreen
WT-4990 Migrate Jenkins “wiredtiger-test-unit-ppc” job to Evergreen
WT-4991 Migrate Jenkins “wiredtiger-test-unit-zseries” job to Evergreen
WT-4994 Migrate Jenkins “wiredtiger-test-spinlock” job to Evergreen
WT-4995 Migrate Jenkins “wiredtiger-test-wtperf” job to Evergreen
WT-5033 Migrate Jenkins “wiredtiger-test-time-shift-sensitivity” job to Evergreen
WT-5042 Reduce configuration parsing overhead from checkpoints
WT-5048 wiredtiger_open with a corrupted meta file should always return WT_TRY_SALVAGE
WT-5083 Add mips64el support
WT-5106 Remove temporary files in clang-format script
WT-5118 Remove incorrect assert that there are no hazard references to discarded WT_REF
WT-5122 Shut down the sweep server before doing the final checkpoint
WT-5123 Fill multi-paragraph comments
WT-5125 Adding new stats for eviction target strategy
WT-5126 Fix incorrect assertion regarding prepared update resolution
WT-5128 Add script to run wtperf with XRay profiling
WT-5134 Fix leaf-page only search and search-near operations
WT-5135 Change lookaside file inserts to use cursor.insert
WT-5140 Fix where a cursor returning random items can use an uninitialized buffer
WT-5142 Don't create huge root pages when rebalancing or bulk-loading objects with overflow keys
WT-5143 Fix typo in error message
WT-5145 Fix the race condition in accessing pinned_timestamp and connection state
WT-5149 Clear the debugging field value so it cannot get stale
WT-5150 LAS sweep is not removing the entries that are no longer required
WT-5156 Lookaside table cursors not operating at isolation level WT_ISO_READ_UNCOMMITTED
WT-5157 Fix atomics usage in spinlock implementation
WT-5160 Stop requiring a checkpoint before calling rollback_to_stable
WT-5163 Fix ignored failure return in WT_CURSOR.next when random retrieval configured
WT-5164 Fix inconsistent underscore/dash output
WT-5169 WT_REF_LIMBO pages cannot support fast (leaf-page only) searches
WT-5174 Truncation rollback locking is insufficient
WT-5176 Group pull request tasks using Evergreen task tags
WT-5187 Checkpoint error path can attempt to release a hazard pointer that isn't held
WT-5189 Python2: handle errors that occur under the concurrent test option (-j)
WT-5193 Revert LAS dropped table change from WT-5150
WT-5195 Reduce Python unit test build time for Evergreen Windows build variant
WT-5196 Data mismatch failures with test/checkpoint after enabling LAS sweep
WT-5197 Fix sanitizer runtime flags in Evergreen
WT-5204 Add diagnostic logging code to the generation drain function
WT-5207 Minimize WT-5043 diagnostic tests to exclude time other than eviction itself
WT-5211 Print mismatch information before dumping page and LAS
WT-5218 Improve eviction to differentiate between clean and dirty pages with WT_CACHE_EVICT_NOKEEP readgen
WT-5220 Re-enable LAS dropped table change from WT-5150
WT-5239 Fix syscall failure about metadata file open
WT-5247 Ensure that only idempotent modify operations are logged
WT-5251 Increase frequency for Linux syscall test
WT-5252 Fix Ubuntu 18.04 PPC and zSeries unit-test failure in Evergreen
4.2.1 Changelog
Security
SERVER-28011 Support multiple KMIP hosts in the --kmipServerName parameter
SERVER-41277 Create FLE Data Framing Classes
SERVER-42351 RHEL8 TLS 1.0 and TLS 1.1 protocols are disabled in the DEFAULT system-wide cryptographic policy level
SERVER-43243 Reintroduce unused repairDatabase ActionType
Sharding
SERVER-10456 get cursor logic used to find docs to clone (in migration) is not same as in removeRange
SERVER-11328 Allow concurrent draining shards
SERVER-33973 Commands to force cleanup of partial data that might have remained after failed collection/database drop
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-39573 Add unique ID to log label "TransactionCoordinator"
SERVER-39763 transactions_target_at_point_in_time.js should disable expiring old chunk history
SERVER-40258 Relax locking requirements for sharding metadata refresh on shards
SERVER-40496 transactions_snapshot_errors_subsequent_statements.js and transactions_writes_not_retryable.js should not use mode {times: 1} for failpoint
SERVER-40852 mongod_returns_no_cluster_time_without_keys.js should wait for shard primary to load cluster time keys
SERVER-40983 Track and log relevant single transaction metrics on mongos for currentOp
SERVER-41374 Add currentOpen, currentActive, and currentInactive to mongos transactions serverStatus output
SERVER-41376 Track time transactions on mongos are active and inactive and include in slow txn logging
SERVER-41615 Transaction coordinator diagnostics should handle coordinator failover
SERVER-41758 Dropping config.shards is allowed and can cause mongos to crash in aggregation code
SERVER-42006 Add transaction tags to prepared_txn_metadata_refresh.js
SERVER-42234 Make txn_two_phase_commit_failover.js robust to all replica nodes running for election at the same time
SERVER-42335 ShutdownShouldCancelQueuedRequests cpp test can ignore kill signal
SERVER-42338 transaction_coordinator_test can self deadlock
SERVER-42457 Check if cluster time has been set on TransactionRouter before observing from an external thread
SERVER-42559 Race in WaitWithOpTimeEarlierThanLowestQueued causes it to fail
SERVER-42610 Flip order of assert.lte arguments in shards_and_config_return_last_committed_optime.js
SERVER-42751 Take CSRLock when observing transaction commit for migration
SERVER-42809 Track and log relevant single two phase commit metrics for transaction coordinator on mongod for currentOp
SERVER-42842 Unable to drop collection in admin database of sharded cluster
SERVER-42856 Transactions with write can be sent to the wrong shard
SERVER-42907 Add timeActiveMicros and timeInactiveMicros for transactions in mongos currentOp output
SERVER-42963 For active sessions only set transaction stats in TransactionRouter::Observer::_reportState()
SERVER-43196 Blacklist update_where.js from sharded concurrency suites with balancer on and no txn override
Replication
SERVER-7019 rs.status needs to show initial sync happening
SERVER-7681 Report majority number in ReplSetGetStatus/isMaster
SERVER-36570 Make OplogEntry mutable
SERVER-38356 Forbid dropping oplog when replset config is present
SERVER-39576 Remove doTxn test command
SERVER-39610 Reformat TransactionParticipant comments and remove last references to the metrics mutex
SERVER-39613 Remove kCommittingWithPrepare and kCommittingWithoutPrepare from TransactionState
SERVER-39614 Remove inActiveOrKilledMultiDocumentTransaction() from TransactionParticipant
SERVER-40466 Unify checks for inMultiDocumentTransaction and friends
SERVER-41221 rollback_after_enabling_majority_reads.js test should make sure the final rollback occurs on node 0
SERVER-41457 Unify the different ways the TransactionParticipant offers for aborting a transaction
SERVER-41465 fassert when applying operations for transactions on secondaries
SERVER-41481 Return dbResponse object stored with exhaustNS and exhaustCursorId in receivedCommands
SERVER-41482 makeExhaustMessage should no longer call OpMsg::parse
SERVER-41497 Create IDL types for ElectionMetrics, ElectionCandidateMetrics and ElectionParticipant Metrics
SERVER-41498 Create ReplicationMetrics class
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-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-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-41580 Don't run transactions suites on the No Journal builder
SERVER-41788 Add OplogApplication::Mode to options in the OplogApplier
SERVER-41918 CollectionBulkLoader does not anticipate exceptions from MultiIndexBlock
SERVER-41955 Add test for replicating prepare oplog entries that were received during initial sync
SERVER-41956 Add integration tests for killOp of commit and abort of prepared transactions
SERVER-41957 Add integration tests for killSessions of a session with a prepared transaction on it
SERVER-41958 Add a test for rolling back prepare and then trying to retry prepare
SERVER-41959 Test running transaction commands through the applyOps command
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-42219 Oplog buffer not always empty when primary exits drain mode
SERVER-42453 ensure current clusterTime is greater than afterClusterTime value for read in step_down_on_secondary.js
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-42478 Remove DB MODE_X locks from oplog application of create/createIndexes
SERVER-42484 May not be inside required WriteUnitOfWork when writing multikey index keys during initial sync data cloning
SERVER-42523 Add more logging to oplog_rollover.js
SERVER-42534 Step down primary for less time in freeze_timeout.js and increase electionTimeoutMillis
SERVER-42562 Increase election timeout for recover_prepared_transactions_startup_secondary_application.js
SERVER-42602 Guarantee that unconditional step down will not happen due to slow node restarts in rollback_fuzzer_[un]clean_shutdowns suites.
SERVER-42613 getHashes should default to liveSlaves, not _slaves in replsettest.js
SERVER-42714 Log replication recovery oplog application completion at level 0
SERVER-42750 OperationContext::inMultiDocumentTransaction() doesn't return true when applying operations for prepared transaction during recovery
SERVER-42755 recover_prepared_txn_with_multikey_write.js should make sure no prepare conflicts are generated on catalog object after restarting node
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-43016 Fix typo in timestamped_reads_wait_for_prepare_oplog_visibility.js and check that nModified = 1
SERVER-43230 Fix race in catchup_takeover_two_nodes_ahead.js
SERVER-43237 replSetFreeze and replSetStepDown cmd done part of restartNode()/transitionToSteadyStateOperations() in rollback test should be resilient of network error.
SERVER-43330 ReplicationStateTransitionLockGuard::_unlock doesn't work with its move constructor
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-41996 Improve PlanExecutor error logging
SERVER-42399 max_time_ms.js test should always disable failpoints if an exception is thrown
SERVER-42514 wait for all nodes to finish index builds in text_index_limits.js
SERVER-42518 Wildcard index plans miss results when the query path has multiple subsequent array indexes
SERVER-42744 Fix transaction history iterator to not return unowned BSON that may be left dangling
SERVER-42749 Ban server_status_with_timeout_cursors from transaction passthroughs
SERVER-42864 change index build initial write timestamp logic
SERVER-43074 Do not use a global variable to encode 'multikeyPath' information when writing out catalog documents
SERVER-43202 Aggregation system can continue trying to execute a query plan after being interrupted, leading to server-fatal invariant failure
Aggregation
SERVER-41770 Multiversion test for change stream support of large transactions
SERVER-42756 $multiply operator may return with or w/o an error depending on whether pipeline optimisation is enabled
Catalog
SERVER-42567 Remove magic from CollectionImpl and IndexCatalogImpl
Storage
SERVER-39708 Fastpath no-ops to multikey updates in IndexBuildInterceptor::sideWrite to avoid mutex acquisition
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-41909 Add the ValidateCmd Genny workload to system_perf.yml
SERVER-41937 Add a try-catch block in TimestampMonitor::startup() or notifyAll() to suppress exceptions
SERVER-41947 Disallow using the "system.views" collection name as the source or target names in the rename command
SERVER-42060 Limit maximum recursion depth for KeyString _appendBsonValue and toBsonValue
SERVER-42205 Raise the snapshot window's cache pressure threshold from 50 to 95
SERVER-42373 Prevent "invalid view definition" error while dropping nonexistent collection
SERVER-42441 renameCollectionForApplyOps should always rename the target out of the way if it exists
SERVER-42652 Fix issue with rename collection
SERVER-42718 dropDatabase commands can be run concurrently, leading to an invalid state
SERVER-42799 obtain timestamp for cleaning up index build without noop write
SERVER-42800 skip size adjustments on temporary record stores for index builds
SERVER-42803 Remove 'no except' in the TimestampMonitor
SERVER-42824 do not lock RSTL for index build cleanup
SERVER-42869 IndexBuildInterceptor rollback handler access _sideWritesCounter field after interceptor is destroyed
SERVER-42915 New style repair's catalog corrections are often false positives, aggressively marking repl nodes as corrupted
SERVER-43019 IndexBuildsCoordinator removes interrupted index build at shutdown on secondary
SERVER-43025 rollback should ignore no-op startIndexBuild oplog entry
SERVER-43075 MongoDB 4.2 cannot use storage.journal.commitIntervalMs param in yaml config file.
SERVER-43322 Add tracking tools for measuring OplogStones performance
WiredTiger
SERVER-39004 Introduce a quota mechanism for the overflow file
Operations
SERVER-41874 Never kill cursors in shell garbage collection in concurrency_simultaneous_replication
SERVER-42599 Regression prevents use of 'show collections' without listCollections privilege
SERVER-42969 Handle non-ascii characters in`USERPROFILE` environment variable.
SERVER-43005 getKeyVault.createKey() should return the created data key
SERVER-43039 db.collection.bulkWrite doesn't support hint with replaceOne
SERVER-43265 Mongo Shell exits with InvalidOptions error when using URI compressors parameter
Build and Packaging
SERVER-37768 Platform Support: Add Community & Enterprise Debian 10 x64
SERVER-37772 Platform Support: Add Community & Enterprise RHEL 8 x64
SERVER-41232 Update man pages
SERVER-41431 Platform Support: Re-enable SUSE 15 build variants
SERVER-41570 Xcode 11 generates new warnings
SERVER-42778 hot_backups should use RHEL 7 large
SERVER-42787 4.2.0 regression (vs 4.0.12): Build failure with various system packages
SERVER-42911 Rebuild mongodb by building.md and failed to build due to ModuleNotFoundError: No module named 'Cheetah' with MSVC on windows
SERVER-43046 Use toolchain python binary to create virtual environments
Internals
SERVER-25025 Improve startup time when there are tens of thousands of collections/indexes on WiredTiger
SERVER-36816 Avoid reloading the view catalog on the primary and secondaries during the dbhash check
SERVER-39776 Initial sync and replication threads simultaneous startup and shutdown races
SERVER-40004 Change the signature of AtomicWord::compareAndSwap to mimic the implementation
SERVER-41466 Blacklist mongos_no_detect_sharding from sharding_csrs_continuous_config_stepdown
SERVER-41492 Disable WiredTiger cursor caching and introduce more aggressive file handle sweeps in testing
SERVER-41585 background_thread_clock_source_test shouldn't assume we can schedule the background thread
SERVER-41622 Reduce noisiness in flow_control_replica_set.js
SERVER-41802 generate_resmoke_tasks doesn't apply max_sub_suites option
SERVER-41939 Connect to fastest LDAP server first
SERVER-42067 Ensure key Ordering offset does not exceed the maximum number of compound index keys
SERVER-42069 uassert when decimal type is encoded in KeyString V0
SERVER-42075 Add DSI module to perf.yml
SERVER-42178 Disable Split Horizon HOSTALIAS testing on SLES
SERVER-42210 Modify changestream tests on multiple databases to support interleaving
SERVER-42216 Ensure pin_getmore_cursor.js waits for server to finish killing cursor
SERVER-42303 NetworkInterfaceTL should schedule out-of-line immediately and never again
SERVER-42305 Need to ensure replication is finished initializing before advancing commit point in heartbeats
SERVER-42310 Specify mode for NamedTemporaryFile in hang_analyzer.py
SERVER-42356 teardown(finished=True) isn't ever called for the NoOpFixture
SERVER-42400 Add new task in system_perf.yml for million documents in transaction workload
SERVER-42419 Ban whole_cluster_metadata_notifications test from running with majority read concern off
SERVER-42424 Blacklist max_doc_size.js and mr_bigobject.js from Periodic Kill Secondaries suite
SERVER-42440 burn_in_test should run tasks on the distro they are normally run
SERVER-42452 failNonIntentLocksIfWaitNeeded failpoint interrupts lock requests in UninterruptibleLockGuard
SERVER-42461 Allow errors in aggregates_during_balancing.js pending work in SERVER-29446
SERVER-42469 Increase initial sync passthrough timeout to 24 hours
SERVER-42476 Improve free monitoring tests
SERVER-42520 Auto encryption of a $changeStream aggregation fails with obscure error
SERVER-42561 search_beta_* tests fail on testing only changes
SERVER-42571 Collect Windows event logs on remote machine during powercycle
SERVER-42608 Allow updateOne and updateMany in shell helper to accept hint
SERVER-42615 Run chkdsk command on Windows after each powercycle loop
SERVER-42622 resmoke.py doesn't attempt to tear the fixture down if setting it up raises an exception
SERVER-42623 sched module in Python 3 causes close() event to mistakenly be canceled, leading to resmoke.py hang
SERVER-42837 Allow the waitInFindBeforeBatch FailPoint to take a data.nss parameter
SERVER-42866 Trigger a logical session cache refresh on all shards in the ShardedCluster test fixture before running test
SERVER-42888 Deprecate CodeWScope for use within the mapReduce command
SERVER-42917 Flow Control should disregard faulty wall clock time readings during lag calculation
SERVER-42946 Setting 4.2 fCV in standalone with existing transaction table crashes MongoDB
SERVER-42953 ttl_repl_secondary_disabled.js should prevent elections
SERVER-43004 Turn on archive for zbigMapReduce in sharding suite
SERVER-43022 Allow compile to be run independently on rhel 62
SERVER-43081 validate should report when an index's 'multikeyPaths' are set but the 'multikey' flag is false
SERVER-43093 Concurrent calls to ShardingReplicaSetChangeListener::onConfirmedSet can cause starvation in the fixed executor
SERVER-43166 auditFormat BSON writes incomplete bson
SERVER-43186 Limit the number of tests added to a generated suite
SERVER-43200 Make auth/mongoURIAuth.js robust to slow commands
SERVER-43288 Update fallback values for generated tasks