3.6 Changelog
On this page
- 3.6.23 Changelog
- 3.6.22 Changelog
- 3.6.21 Changelog
- 3.6.20 Changelog
- 3.6.19 Changelog
- 3.6.18 Changelog
- 3.6.17 Changelog
- 3.6.16 Changelog
- 3.6.15 Changelog
- 3.6.14 Changelog
- 3.6.13 Changelog
- 3.6.12 Changelog
- 3.6.11 Changelog
- 3.6.10 Changelog
- 3.6.9 Changelog
- 3.6.8 Changelog
- 3.6.7 Changelog
- 3.6.6 Changelog
- 3.6.5 Changelog
- 3.6.4 Changelog
- 3.6.3 Changelog
- 3.6.2 Changelog
- 3.6.1 Changelog
3.6.23 Changelog
Query
SERVER-40361 Reduce memory footprint of plan cache entries
Internals
- SERVER-43973 jsTestName() should return a unique name for each thread in the parallel suite
- SERVER-46686 Explain does not respect maxTimeMS
- SERVER-50267 Set output limit for 'rawMongoProgramOutput()'
- SERVER-52969 Disable Powercyle on non-master branches
- SERVER-53992 Remove calls to detect-outliers from performance tasks
- SERVER-54134 Ignore newer mongo versions on older branches of setup_multiversion_mongodb.py
- TOOLS-2803 [v3.6] Add --config option for password values
3.6.22 Changelog
Sharding
SERVER-53182 [v3.6] Omit "versions" from {shardingState: 1} command when not running as a --shardsvr
Replication
- SERVER-33747 Arbiter tries to start data replication if cannot find itself in config after restart
- SERVER-52680 Removed node on startup stuck in STARTUP2 after being re-added into the replica set
- 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
Storage
SERVER-52902 Remove assertion !haveJournalFiles() at dur_journal.cpp:265
Build and Packaging
- SERVER-32437 Platform Support: add Amazon Linux 2
- SERVER-52854 Fix package test on debian based system in 3.6
Internals
- SERVER-50445 Return the value as double when NumberLong subtraction overflows in ExpressionSubtract
- SERVER-50891 mongod 3.6.20-rc2 core dumps if dbpath DNE or perms block
- SERVER-52654 new signing keys not generated by the monitoring-keys-for-HMAC thread
- SERVER-52806 deb install files assume systemd
3.6.21 Changelog
Sharding
- SERVER-51808 invariant failure: readConcern level != Available
- SERVER-51885 Blacklist balancing_sessions_collection.js from sharding_csrs_continuous_config_stepdown
Replication
- 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-49991 Alias printSlaveReplicationInfo() shell helper
- SERVER-50116 Forbid oplog writes when replication is enabled
- SERVER-50640 listCommands should return "isMaster" alias in addition to "hello" command name
Query
- SERVER-51083 Problem with regex index bounds
- SERVER-51120 Find queries with SORT_MERGE incorrectly sort the results when the collation is specified
Storage
SERVER-34243 listCollections should not require a MODE_S database lock
Operations
SERVER-26726 Check number of arguments for createIndex() and throw error if more than two arguments
Build and Packaging
SERVER-46342 DEB installs of MDB do not issue systemctl daemon-reload on install
Internals
- SERVER-45624 Pre-split and distribute chunks of sessions collection
- SERVER-50123 Record number of physical cores on all platforms
- SERVER-50216 Adjust sys-perf frequencies
- SERVER-50605 Add {logMessage: "msg"} test-only command
- SERVER-50736 Make OpenSSL explicitly accept SNIs presented in ClientHello
- SERVER-50818 Coverity analysis defect 114987: Wrapper object use after free
- SERVER-51106 Make the isMaster command a derived class of hello
- SERVER-51303 Lookup stage followed by $match on type uses wrong field in matching condition
- TOOLS-2590 [v3.6] sslAllowInvalidHostnames bypass ssl/tls server certification validation entirely
3.6.20 Changelog
Replication
- SERVER-48967 Prevent replicated writes on empty namespaces on secondaries
- SERVER-49990 Alias setSlaveOk() and getSlaveOk() shell helpers
- SERVER-50039 Timing error in dbadmin.js test
Query
- SERVER-36910 Reduce severity or remove log message for PlanExecutor::DEAD error during find
- SERVER-39392 Invariant in PlanStage::dispose always evaluates as true
- SERVER-48993 explodeForSort can produce incorrect query plan
Aggregation
SERVER-40317 $facet execution has no limit on how much memory it can consume
Storage
SERVER-49449 index_restart_secondary.js is not compatible with storage engines without support for persistence
Operations
SERVER-48244 Shell should not hard-code the allowed explain levels and let the server reject it instead
Build and Packaging
- SERVER-33000 Platform Support: add Ubuntu 18.04
- SERVER-42042 Warn or fail early on dynamic builds with toolchain compiler and tcmalloc
- SERVER-49925 Dynamic builders should not combine the mongodbtoolchain with tcmalloc
- SERVER-50124 Pin lazy-object-proxy python module
Internals
- SERVER-33229 Overload startParallelShell in auto_retry_on_network_error.js to connect after loading the auto_retry_on_network_error.js override
- SERVER-41600 IndexCatalog::refreshEntry should invalidate the index from the CollectionInfoCache
- SERVER-43233 Add ability to request only specific attribute(s) for the LDAP groups
- SERVER-45202 Improve Command alias infrastructure
- SERVER-47930 Ubuntu 20.04 - ldap_authz_authn.js fails to load test certificate
- SERVER-48709 signing key generator thread on config server not waken up as expected
- SERVER-49054 Server MSI should install Compass instead of Compass Community
- SERVER-49352 4.0 does not build with python 3.8
- SERVER-49404 Enforce additional checks in $arrayToObject
- SERVER-50180 Fix User lifetime management in AuthorizationManager::acquireUserForSessionRefresh
3.6.19 Changelog
Sharding
- SERVER-46487 The mongos routing for scatter/gather ops can have unbounded latency
- SERVER-47913 Redact sharding messages in split chunk and distributed lock acquisition
Replication
- SERVER-45610 Some reads work while system is RECOVERING
- SERVER-47695 Write commands run by threads that can survive rollback can fail operationTime invariant in ServiceEntryPoint
Query
- SERVER-40805 Indicate the reason for replanning in the log file
- SERVER-47994 Fix for numerical overflow in GeoHash
Storage
SERVER-46398 Suggest explicit dbpath when starting mongod on macOS and the default dbpath isn't found
Operations
SERVER-45295 Make sure that LDAP logs always contain context on AuthZN operation
Build and Packaging
- SERVER-42042 Warn or fail early on dynamic builds with toolchain compiler and tcmalloc
- SERVER-48640 Update RHEL 6.2 AMI for package tests
- SERVER-48659 Update SLES 12 AMI for package tests
- SERVER-48681 Update Debian 8.1 AMI for package tests
Internals
- SERVER-45367 When the Range Deleter is waiting for the open cursors, list these cursors in the logs.
- SERVER-45508 Invariant failure in getFieldsWithStringBounds with descending point ranges
- SERVER-47256 Update listed maintainer for repo package files
- SERVER-47686 Upgrade static OpenSSL to 1.1.1g
- SERVER-47798 Audit isMaster response validation for mongod and mongos
- SERVER-48032 Update references of community mailing-lists to MongoDB Developer Community Forums
- SERVER-48657 Use evergreen module to control signal processing in perf projects
- SERVER-49142 Validate correct field name in RoleName::parseFromBSON()
- SERVER-49335 publish_packages should use barque API key
- WT-5119 Birthmark records can be read as normal updates if reads race with checkpoints
- WT-5150 LAS sweep is not removing the entries that are no longer required
- WT-5196 Data mismatch failures with test/checkpoint after enabling LAS sweep
- WT-5376 WT_UPDATE.type field can race with visibility checks when returning key/value pairs
- WT-5587 Limit how many checkpoints are dropped by a subsequent checkpoint
3.6.18 Changelog
Security
SERVER-46834 Use monotonic time in UserCacheInvalidator
Sharding
- SERVER-29153 Make sure replica set nodes agree on which node is primary before doing writes in ShardingTest initialization
- SERVER-33597 Make allow_partial_results.js, return_partial_shards_down.js start shards as replica sets
- SERVER-44130 Flip order of assert.lte arguments in logical_time_metadata.js
- SERVER-45770 Add to information contained in logfile about "moveChunk.to"
- SERVER-46466 Race with findAndModify retryable write and session migration
Replication
- SERVER-35050 Don't abort collection clone due to negative document count
- SERVER-35437 Wait for secondary state after stepdown command in multi_rs.js
- SERVER-45178 Rollback via refetch can cause rollback to happen successfully w/o updating the rollback id.
Query
- SERVER-32903 Ambiguous field name error should be ignored during initial sync
- SERVER-45363 Issue with mongodb text indexes and weights when using wildcard specifier
Aggregation
SERVER-45418 DocumentSourceCursor batching memory accounting does not account for empty documents, leads to unbounded memory use for count-like aggregates
Storage
SERVER-45289 Conditional jump or move depends on uninitialised value(s) in validate_adaptor.cpp
Operations
- SERVER-34199 "timing" section of serverStatus can have large impact on ftdc retention
- SERVER-46024 Collect /proc/vmstat swap statistics in FTDC
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-46983 Upload repobuilding packages to correct URL
- SERVER-46996 all push/publish_packages tasks should run on small hosts
Internals
- SERVER-30739 config_server_checks.js should assert if initial replSetConfig fails
- SERVER-37148 Remove mr_shard_version.js and mr_during_migrate.js in favor of MR FSM test
- SERVER-38119 Windows dump file naming does not account for dots in directory names
- SERVER-40047 Test for blocking queue should not test for non-guaranteed condition
- SERVER-40305 Add diagnostic logging to max_time_ms.js
- SERVER-42278 Log SockAddrs produced during LDAP connection establishment with manually derived sizes
- SERVER-42525 Single-node replica sets shouldn't wait for electable caught up secondaries during shutdown
- SERVER-43349 Incorrect serialization for $elemMatch $not $ne
- SERVER-44325 Add polyfill for certificate chain verification
- SERVER-44435 Allow x509 authorization to be selectively enabled based on the CA
- SERVER-44868 Initialsync logkeeper and logkeeper-short tests should pass snapshot id and dataset link respectively to dsi(sys-perf)
- SERVER-45156 SockAddr constructor should take sockaddr, not sockaddr_storage
- SERVER-45472 Ensure RoleGraph can serialize authentication restrictions to BSON
- SERVER-45766 Remove "requires" from the server yaml
- SERVER-45867 Use latest version of signal processing
- SERVER-45935 [3.6] WT error handler incorrectly prints "An unsupported journal format detected"
- SERVER-46082 Use bin/analysis.py for performance projects
- SERVER-46174 Free peer certificate in SSL_get0_verified_chain polyfill
- SERVER-46754 Use new repobuilder service
- SERVER-46766 Teardown clusters after every perf run
- SERVER-46899 Fix tcmallocReleaseRate parameter in 4.0 and 3.6
- SERVER-47063 Upgrade static OpenSSL to 1.1.1e
- SERVER-47232 Ensure availability of Python ldap libraries
3.6.17 Changelog
Replication
- SERVER-34876 initial_sync_with_write_load.js needs to await initial sync completion before reading oplog
- SERVER-45396 fix the "me" field in isMaster responses when using splithorizon
Query
SERVER-42565 Aggregations and find commands sort missing fields differently
Aggregation
- SERVER-42756 $multiply operator may return with or w/o an error depending on whether pipeline optimisation is enabled
- SERVER-43764 Add more testing for special values in DoubleDoubleSummation
- SERVER-44174 $push and $addToSet should restrict memory usage
- SERVER-44733 Change stream should throw ChangeStreamFatalError if a single shard cannot be targeted for updateLookup
- SERVER-44869 Add query knob to control memory limit for $push and $addToSet
Storage
SERVER-44796 Adjust nojournal startup warning to be more compelling
Build and Packaging
- SERVER-37772 Platform Support: Add Community & Enterprise RHEL 8 x64
- SERVER-44641 Platform Support: Remove Enterprise RHEL 7 zSeries and SLES 12 zSeries from 3.6
Internals
- SERVER-34844 Relax expectations in apply_batches_totalMillis
- SERVER-35099 Increase wtimeout in get_last_error.js even more
- SERVER-35382 _isSelf command needs to be marked requiresAuth false
- SERVER-38002 Upgrade Pcre to at least 8.42
- SERVER-39131 Refactor storage engine lock file support
- 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-44568 Update the embedded version of the server's timezone data file to tzdb-2019c
- SERVER-44828 Correct logic to re-compute dependencies after absorbing a $sort into query layer
- SERVER-45104 [v3.6] Fix spill_to_disk.js
- SERVER-45372 Blacklist versions without majority read concern for change_streams_update_lookup_shard_metadata_missing.js
- WT-4636 Fix strace in syscall test
- WT-5042 Reduce configuration parsing overhead from checkpoints
- WT-5120 Checkpoint hangs when reconciliation doesn't release the eviction generation
- WT-5135 Change lookaside file inserts to use cursor.insert
- WT-5218 Improve eviction to differentiate between clean and dirty pages with WT_CACHE_EVICT_NOKEEP readgen
- WT-5239 Fix syscall failure about metadata file open
- WT-5247 Ensure that only idempotent modify operations are logged
- WT-5277 Cursor key out-of-order detected in the lookaside file
- WT-5297 syscall.py fail on mongodb-4.0
3.6.16 Changelog
Security
SERVER-44320 Allow zoned sharding commands to be authorized via actiontypes
Sharding
SERVER-42914 Implement random chunk selection policy for balancer for use in concurrency_*_with_balancer workloads
Replication
- SERVER-43193 Always disable document validation on secondaries
- SERVER-44675 server_status_metrics.js fails due to racy repl.buffer.count metric in serverStatus
Query
SERVER-44571 Documents involved in SERVER-44050 corruption scenario cannot be updated or deleted after upgrade
Storage
SERVER-44584 (3.6) Rewriting updates as modifications incorrectly considers logging state
Build and Packaging
- SERVER-37769 Platform Support: Add Community & Enterprise SLES 15 x64
- SERVER-44392 Platform Support: Remove zSeries ubuntu 16.04
Internals
- SERVER-35463 Mark listCommands as pre-auth
- SERVER-38002 Upgrade Pcre to at least 8.42
- SERVER-40669 install_compass should not explicitly use python3
- SERVER-42961 Fix Split Horizon testing on SLES
- SERVER-43085 Regenerate all testing certificates with SHA-256 instead of SHA-1
- SERVER-44140 Use signal processing without DSI
- SERVER-44319 Skip keyfile check in replica_sets/auth1.js on windows
- SERVER-44322 Fail gracefully when the storage engine has failed to initialize on v3.6
- SERVER-44651 Update signal processing version
- SERVER-44727 detect-changes should not be called via run-dsi
3.6.15 Changelog
Security
- SERVER-43653 Upgrade static OpenSSL to 1.1.1d
- SERVER-43751 Recompute compressor manager message parameters
Sharding
- SERVER-10456 get cursor logic used to find docs to clone (in migration) is not same as in removeRange
- SERVER-34760 Retries of _configsvrShardCollection may not send setShardVersion to primary shard
- SERVER-36159 Log whenever the gossiped config server opTime term changes
- SERVER-36222 call to ReplSetTest.restart in shard_identity_rollback.js is racy
- SERVER-36315 After stepdown the CSRS dist lock manager keeps trying to unlock locks
- SERVER-38205 Optimize splitVector for the jumbo-chunk case
- SERVER-42783 Migrations don't wait for majority replication of cloned documents if there are no transfer mods
- SERVER-42793 Autosplit size tracker random initial value is too low
- SERVER-44182 Blacklist major_version_check.js from sharding_last_stable suite in 3.6
Replication
- SERVER-37846 writeConcern can be satisfied with an arbiter if the write was committed
- SERVER-38685 Startup warning if In-Memory SE is used and writeConcernMajorityJournalDefault is true
- SERVER-38994 Step down on SIGTERM
- SERVER-39310 Check canServeReadsFor in getMores
- SERVER-40335 Don't wait for election handoff in ReplSetTest.stopSet()
- SERVER-40355 rs.config that contains an _id greater than the number of nodes will crash
- SERVER-42155 Indicate term mismatches when readConcern times out
- SERVER-43109 Explicitly state nodes in awaitReplication in do_not_advance_commit_point_beyond_last_applied_term.js
- SERVER-43673 Blacklist toggle_feature_compatibility.js from backup_restore.js on 3.6
- SERVER-43708 Wait for nodes to become secondary in last_vote.js and slave_delay_clean_shutdown.js
Query
- SERVER-39019 $elemMatch $ne serialization is incorrect, doesn't roundtrip
- 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-43074 Do not use a global variable to encode 'multikeyPath' information when writing out catalog documents
- SERVER-43699 Find $mod can result in UB
Aggregation
SERVER-43034 Special values handling is inconsistent in DoubleDoubleSummation
Storage
- SERVER-42441 renameCollectionForApplyOps should always rename the target out of the way if it exists
- SERVER-42652 Fix issue with rename collection
- SERVER-43908 Modify IndexConsistency hash-map keys to avoid hitting an invariant on duplicate index keys in KeyString form for different indexes
- SERVER-44188 [4.0] validate_tests should remove index entries by RecordId obtained from the cursor
WiredTiger
- SERVER-35271 4.0 rc0 upgrade from 3.6.5 logs "unsupported WiredTiger file version" error
- SERVER-39004 Introduce a quota mechanism for the overflow file
- SERVER-40575 Improve error message when starting MongoDB 3.6 on unclean shutdown of MongoDB 4.0
Operations
- SERVER-28604 Log when a cursor is reaped for exceeding the timeout
- SERVER-40537 Log error code 261 for TooManyLogicalSessions to the mongodb.log
- SERVER-42257 Add new shell startup banner
- SERVER-43081 validate should report when an index's 'multikeyPaths' are set but the 'multikey' flag is false
- SERVER-43350 The server crashes when trying to join collections ($ lookup with pipeline).
Build and Packaging
SERVER-42911 Rebuild mongodb by building.md and failed to build due to ModuleNotFoundError: No module named 'Cheetah' with MSVC on windows
Internals
- SERVER-25025 Improve startup time when there are tens of thousands of collections/indexes on WiredTiger
- SERVER-42075 Add DSI module to perf.yml
- SERVER-42178 Disable Split Horizon HOSTALIAS testing on SLES
- SERVER-42706 Test seeding secondary without sessions or transactions table
- SERVER-42866 Trigger a logical session cache refresh on all shards in the ShardedCluster test fixture before running test
- SERVER-42953 ttl_repl_secondary_disabled.js should prevent elections
- SERVER-43151 Error in aggregation assertion at value.cpp:1368
- SERVER-43240 Add DSI and mongo-perf modules to MMAP build variants in v4.0 mongo
- SERVER-43634 Report different errors for missing scons and fail to import scons
- SERVER-43922 ldap_authz_lib.js uses runNonMongoProgram on 3.6
- SERVER-44064 Perform explicit cast on MessageCompressorManager parameter
- SERVER-44183 Failure to listen on an asio socket should be fatal
- SERVER-44184 De-duplicate resolved addresses on v3.6
- SERVER-44312 Specify evergreen auth in performance tests for signal processing
- WT-4869 Stop adding cache pressure when eviction is falling behind
- WT-4881 Soften the restrictions on re-entering reconciliation
- WT-4893 Fix a race between internal page child-page eviction checks and cursors in the tree
- WT-4898 Don't allow the eviction server to reconcile if it's busy
- WT-4956 Handle the case where 4 billion updates are made to a page without eviction
- WT-4957 Revert part of a change about when pages are queued for urgent eviction
- WT-5050 Assertion failure during urgent eviction of metadata page
3.6.14 Changelog
Security
- SERVER-38945 SSL performance regression
- SERVER-41069 Ability to disable authorization via x509 extensions
- SERVER-41441 Upgrade static OpenSSL to 1.1.1c
Sharding
- SERVER-26531 jumbo flag in chunk can be cleared when the shard that owns it donates a chunk
- SERVER-36394 mongos should reset chunk size tracking information when autosplit = false or splitvector returns too few split points
- SERVER-36443 Long-running queries should not cause a build-up of unused ChunkManager objects
- SERVER-36469 shard_kill_and_pooling isn't querying the shard it's supposed to
- SERVER-41859 logical_time_metadata.js shouldn't assume lastApplied opTime equals $clusterTime
- SERVER-41867 CatalogCache::_scheduleDatabaseRefresh/_scheduleCollectionRefresh can try to grab _mutex it already owns
- SERVER-41869 Reverse mutex acquisition order in CatalogCache::_scheduleCollectionRefresh
- SERVER-42793 Autosplit size tracker random initial value is too low
Replication
- SERVER-38659 Race condition in IsMasterIsFalseDuringStepdown unittest
- SERVER-40336 ReplicationCoordinatorImpl::_random isn't robust to replica set members being started at the same time
- SERVER-41036 Make ReadWriteAbility::_canAcceptNonLocalWrites AtomicWord<bool> to prevent torn reads.
- SERVER-42055 Only acquire a collection IX lock to write the lastVote document
Query
- SERVER-40134 Distinct command against a view can return incorrect results when the distinct path is multikey
- SERVER-41065 Make agg evaluate() thread safe by passing 'Variables' as a parameter
- SERVER-41829 findAndModify ignores filter expressions that are not objects
Storage
WiredTiger
- SERVER-41913 Avoid in-place modify operations for logged collections
Operations
SERVER-36099 FTDC for mongos is unworkably large for large installations
Build and Packaging
- SERVER-36043 systemd unit for mongod starts before multi.user target
- SERVER-40563 Our init scripts check /proc/[pid]/stat should validate that
(${procname})
is the process' command name. - SERVER-41424 scons should fail early if invoked with wrong Python interpreter
- SERVER-41443 Update Enterprise License
- SERVER-41743 Update MSI inclusions for 3.6
- SERVER-42089 Platform Support: Remove Enterprise RHEL 6.7 zSeries from 3.4 and 3.6
- SERVER-42109 Add Ubuntu 14.04 to v3.6
- SERVER-42233 Bump Windows package dependencies
- SERVER-42603 Recent service file change may cause cyclic dependencies
Internals
- SERVER-26626 In external_auth_WT JSTests, ensure that Saslauthd has fully started before continuing test
- SERVER-35067 Blacklist explain2.js from retryable writes jscore stepdown suite
- SERVER-37984 Upgrade yaml-cpp >= 0.6.0
- SERVER-38141 Incorrect usage of MONGO_CONFIG_HAS_SSL_SET_ECDH_AUTO prevents enabling of elliptic curve auto negotiation
- SERVER-39642 Decrement egress counter when scoped connection not returned to the pool
- SERVER-40156 Initial implementation of Split Horizon
- SERVER-40643 Add tests for
replSetConfig
andreplSetInitiate
with Split Horizon - SERVER-40645 Add tests for SNI/TLS behavior of Split Horizon
- SERVER-40923 Remove npm test command from "run jstestfuzz" Evergreen function
- SERVER-40924 Add Evergreen task to sanity check fuzzer can parse JavaScript tests
- SERVER-41004 killSessions command can return CursorNotFound error for successful kill
- SERVER-41016 Calculate deltas for updates to large documents
- SERVER-41075 Remove 'mongo/repl/replication_coordinator.h' from op-context inclusion path
- SERVER-41148 FTDC is calling boost::filesystem without passing an error_code parameter
- SERVER-41184 Add metrics to indicate the amount of sharded updates done with only _id in query
- SERVER-41349 Add a log statement for slow dns resolution
- SERVER-41401 patch_files.txt doesn't distinguish between enterprise and community files
- SERVER-41442 Fix second race in umask.js
- SERVER-41546 SysV init scripts should verify PIDfile exists instead of failing
- SERVER-41624 Fix Split Horizons on Legacy Transport in v3.6
- SERVER-41680 Propagate ${branch_name} Evergreen expansion to fuzzer invocation
- SERVER-41753 Fix indexc.js to not depend on the clock always moving forward
- SERVER-41789 sys-perf: Use bootstrap.overrides in bootstrap.yml config file
- SERVER-41833 Update README license text
- SERVER-41967 Symlink /data to Z instead of C
- SERVER-42178 Disable Split Horizon HOSTALIAS testing on SLES
- SERVER-42228 LoggerRuntimeConfigError exceptions can lead to background dbhash thread running until Evergreen task times out
- WT-4352 Resolve birthmarks during eviction in more cases
- WT-4421 Add a way to calculate modify operations
- WT-4693 WT_CONNECTION::reconfigure should not require quiescence when downgraded
- WT-4706 Add a statistic to track the lookaside table size
- WT-4750 Sweep can remove active lookaside records when files are closed and re-opened
- WT-4759 Save a copy when an old overflow value is discarded
- WT-4768 Inconsistent data with lookaside eviction followed by sweep
- WT-4769 Don't discard active history for empty pages
- WT-4776 Modify operations should be equivalent to updates
- WT-4794 Mark lookaside history resolved in all paths
- WT-4803 Implement file_max configuration for Cache Overflow mechanism
- WT-4823 Add check for uninitialised lookaside resources
- WT-4848 Fix perf regression when calculating differences
3.6.13 Changelog
Security
- SERVER-40226 Upgrade static OpenSSL to 1.1.1b
- SERVER-40393 Disable SSL_MODE_RELEASE_BUFFERS in ASIO
Sharding
- SERVER-36004 SessionUpdateTracker should ignore no-op entries for pre/post image oplogs
- SERVER-36457 mongos_rs_shard_failure_tolerance.js test should assert that the movePrimary command succeeds
- SERVER-39420 Remove in-memory boolean to indicate config.server.sessions collection set up
- SERVER-40136 The background key generator can remain disabled on FCV upgrade after a downgrade
Replication
- SERVER-35636 Renaming collection for applyOps needs to check completeness of target namespace
- SERVER-37065 Report ismaster:false in isMaster command response immediately upon learning of a new term
- SERVER-39831 Never update commit point beyond last applied if learned from sync source
- SERVER-40628 Initial sync could fail under replsetprio1.js settings
- SERVER-40788 Improve logging around replication catchup
- SERVER-40977 mmapv1 and ephemeralForTest variants should exclude tests with requires_majority_read_concern tag
- SERVER-41081 do_not_advance_commit_point_beyond_last_applied_term.js must wait for Node E to reach stopReplProducerOnDocument failpoint
- SERVER-41247 do_not_advance_commit_point_beyond_last_applied_term.js must not run with periodic noop writer on
- SERVER-41342 read_committed_stale_history.js must perform continuous writes to ensure majority commit point propagates to secondary
Storage
- SERVER-16571 Use Actual Memory Constraint vs. Total System Memory When They Differ
- SERVER-30356 Improve error reporting for validation
- SERVER-41213 Unique background index builds may produce inconsistent keys
Operations
- SERVER-39820 Add the client IP address to the successful authentication log message
- SERVER-40866 Use JSON.stringify() to serialize string in tojson()
Build and Packaging
- SERVER-37765 Platform Support: Remove Ubuntu 14.04
- SERVER-37774 Platform Support: Remove Enterprise Ubuntu 16.04 PPCLE
- SERVER-40242 Update banner inclusions for vendored tools
- SERVER-40491 Update Debian 8 image for package test
Internals
- SERVER-37382 printShardingStatus.js races with ShardingUptimeReporter thread
- SERVER-38984 Attach IDs to users
- SERVER-39746 System-Performance: Write project in runtime.yml
- SERVER-40052 Shutdown in mongos can trigger BatchWriteOp invariant
- SERVER-40165 generate wtimeout deadlines with the precise clock
- SERVER-40514 Race between BufferedHandler.close() and BufferedHandler.flush() leads to resmoke.py hanging with --log=buildlogger
- SERVER-40922 Add npm install command to "run jstestfuzz" Evergreen function
- SERVER-40932 Increase timeout for shutting down the ServiceExecutor
- SERVER-41088 Propagate Evergreen order field to Cedar for system perf
- SERVER-41103 Fix fuzzer task invocations
- SERVER-41169 Most powercycle testing for Linux was removed from Evergreen
- TOOLS-2068 mongodump oplog delay
3.6.12 Changelog
Sharding
- SERVER-35219 Regain MongoDB balancer performance with sessions
- SERVER-39847 Migrating session info can trigger fassert when destination shard has transaction history truncated by oplog
- SERVER-39932 SessionRuntimeInfo memory is not being released
Replication
- SERVER-37255 replSetReconfig with concurrent election can trigger invariant
- SERVER-38722 CollectionCloner should handle QueryPlanKilled on collection drop
- SERVER-39490 opWriteConcernCounters can cause undefined behavior due to overflow
- SERVER-39641 Blacklist max_time_ms.js from read concern linearizable passthrough
- SERVER-39758 double_rollback.js should reliably wait for node 0 to complete rollback
- SERVER-40039 Increase assert.soon timeout in initial_sync_invalid_index_spec.js
Query
SERVER-38764 External sorter should use 64-bit integers for file offsets
Aggregation
- SERVER-39394 Views collation check should traverse through nested $lookup pipelines
- SERVER-39487 Aggregation operator $sqrt output for NumberDecimal is the same as $exp
Storage
- SERVER-17010 Reduce file handle usage in File based Sorter
- SERVER-39773 decrease number of updates in rollback_wt_cache_full.js
Operations
- SERVER-37722 Quiet mode does not suppress connection end events
- SERVER-40131 Incorrect format string in Windows stacktrace generator.
- SERVER-40259 Include third party notices for ASIO and variant
Build and Packaging
SERVER-36622 Package tests fail for newer Ubuntu
Tools
TOOLS-2229 Mongofiles deletes chunks of existing file when failing to put_id with existing _id
Internals
- SERVER-36231 Mongos write path doesn't look for retryable write concern errors
- SERVER-36437 The dbstats command should lock the database in MODE_IS instead of MODE_S
- SERVER-36750 blacklist memory.js on ppc64le in memory variants
- SERVER-37620 Improve watchdog_test reliability
- SERVER-38644 Guard against ephemeral files disappearing during umask test
- SERVER-38697 Powercycle kill by PID might try to kill the wrong process
- SERVER-38789 Accept connection failure on Windows in ssl_alert_reporting.js
- SERVER-39056 Further refine readWriteAnyDatabase
- SERVER-39058 Synchronize user set modification in AuthorizationSession with Client
- SERVER-39822 Improve watchdog_test.exe test reliability
- SERVER-40063 jstestfuzz_sharded_continuous_stepdown.yml is running with a 1-node CSRS on the 3.6 branch
- SERVER-40076 Tag JavaScript tests with the reason they're unable to run in Atlas
- WT-4324 Ensure checkpoints rewrite pages with data in the future
- WT-4615 Sync backup file before returning backup cursor
3.6.11 Changelog
Security
SERVER-36606 Remove size limits on BSON audit events
Sharding
- SERVER-9043 Link
flushRouterConfig
on the config server and shards - SERVER-31156 Admin command to update the chunk metadata for only one collection
- SERVER-36863 query_config.js assumes that config.mongos is always present
- SERVER-36901 sh.status() "Last reported error:" is actually 5th Latest error message
- SERVER-37339 Sharding state is set to initialized on Grid before sharding components are fully initialized
- SERVER-37624 Sessions never expire when you change value of localLogicalSessionTimeoutMinutes
- SERVER-38192 Ignore duplicate key error from refreshLogicalSessionCacheNow
- SERVER-38344 Early release of distributed database locks during initial collection sharding results in migration/split failures
- SERVER-38387 agg_out.js concurrency workload always fails to shard the output collection
- SERVER-38784 Blacklist verify_sessions_expiration_sharded.js from the sharding_last_stable_mongos_and_mixed_shards suite.
- SERVER-39030 Wrong info logged by splitVector
Replication
- SERVER-32146 Log slow oplog entry application
- SERVER-35608 Invariant that term from lastAppliedOptime is never greater than our current term
- SERVER-37274 commands_that_accept_wc tests can give secondaries priority zero
- SERVER-37910 Create new serverStatus metric for number of operations applied on a secondary that's incremented at batch boundaries
- SERVER-37915 Replication doesn't update opsCounterRepl command on secondaries
- SERVER-38200 Fix ./jstests/replsets/initial_sync_oplog_hole.js to prevent using stale heartbeat info in the test.
- SERVER-38647 backup_restore_rolling.js can fail due to stepdown
- SERVER-38998 Create serverStatus metrics for readConcern and writeConcern
- SERVER-39142 ServerWriteConcernMetrics must lock _mutex before modifying members
- SERVER-39267 Guard opWriteConcernCounters behind flag
- SERVER-39286 server_write_concern_metrics.js must use requires_journaling tag
Query
- SERVER-38275 Handle explains without namespaces
- SERVER-39472 Backport changes to apply_ops_concurrent_non_atomic.js to account for HMAC key inserts in 3.6 and 4.0.
Aggregation
- SERVER-31098 Wrong ns in system.profile for aggregation query
- SERVER-39109 mongod crash: Invariant failure !_exec src/mongo/db/pipeline/document_source_cursor.cpp 295
- SERVER-39166 $graphLookup should force a pipeline to split in sharded cluster
- SERVER-39322 Backport timelib fix for incorrect snprintf invocation with static buffer
Storage
- SERVER-35732 Hyphenated database names do not work with dbStats.fsUsedSize / TotalSize
- SERVER-38779 Build a mechanism to periodically cleanup old WT sessions from session cache
- SERVER-38801 Cope with large BSON blobs in queryable's
listDirectory
call.
Operations
SERVER-37155 Improve the LDAP server logging
Build and Packaging
- SERVER-33958 When using thin archives the --cache=nolinked mode should push thin archives to the cache
- SERVER-38416 Upgrade static OpenSSL to 1.1.1a
- SERVER-39483 Stripped binaries and .debug files should not be cached
Tools
- TOOLS-2030 mongodump does not dump system.js collections
- TOOLS-2109 Build Tools with Go 1.11
Internals
- SERVER-31755 Raise intermediate $lookup document size to 100MB, and make it configurable
- SERVER-35620 downloaded file integrity: use shasum instead of python script
- SERVER-38748 Background indexes created through applyOps should run on the command thread
- SERVER-38954 Increase query execution time for the test case in max_time_ms.js that expects it to hit the time limit
- SERVER-39009 Make bulldlogger credentials location configurable via environment variable
- SERVER-39031 Make SCons default --jobs to CPU count
- SERVER-39331 Remove StressTest from network_interface_asio_integration_test
- TOOLS-1906 Ignore mongorestore error "x509 certificate routines:X509_STORE_add_cert:cert already in hash table"
- TOOLS-2158 mongodump failing on Windows with "error opening system CA store: Access is denied."
- TOOLS-2167 Add CGO flags for building on Windows
- TOOLS-2168 Add CGO flags for building on MacOS
- TOOLS-2210 Build with tools with Address Space Layout Randomised (ASLR) flags enabled
- WT-4483 Improve caching of small updates to large values
3.6.10 Changelog
Security
- SERVER-35212 URI connection does not default to admin database when no authSource is specified
- SERVER-37687 Capture libldap ErrorString in bind failure
Sharding
- SERVER-36965 Ensure setUp writes in
safe_secondary_reads_single_migration_suspend_range_deletion.js
get propagated to the shard secondary - SERVER-37051 ShardServerCatalogCacheLoader does not check the internal term after reading from the task queue
- SERVER-37080 Implement tuneable batch size for chunk migrations
- SERVER-37511 Logical session reaper and refresh threads should set up sessions collection immediately
- SERVER-37616 Implement tuneable batch size for the rangedeleter
- SERVER-37902 recovering_slaveok.js should assert all writes it makes succeed
- SERVER-37932 Remove erroneous part of coll_epoch_test1.js that attempts to test something that shouldn't work, but due to a bug in the test, the test passes
- SERVER-38050 The range deleter doesn't validate it is still operating on the same collection after the deletion loop
- SERVER-38062 Add assert.commandWorked() to commands in read_pref_cmd.js
- SERVER-38196 Coverity analysis defect 105128: Unchecked return value
- SERVER-38371 Session catalog migration will skip later sessions if a different earlier session encounters new transaction
Replication
- SERVER-37500 Blacklist geo_s2ordering from replica_sets_kill_primary_jscore_passthrough suite
- SERVER-37557 Add startup warning about enableMajorityReadConcern and usage of arbiters
- SERVER-37935 Remove read concern "majority" overrides for change streams test suites
- SERVER-38024 initial_sync_oplog_hole test should be tagged as requiring document locking
- SERVER-38476 Increase timeout for clean_shutdown_oplog_state.js, again
Query
- SERVER-35455 QueryPlannerAccess should hold owned pointers by unique_ptr rather than raw pointer
- SERVER-37385 Change max_time_ms.js to tolerate 'Interrupted' error codes
- SERVER-38070 Infinite loop in aggregation expression
- SERVER-38164 $or pushdown optimization does not correctly handle $not within an $elemMatch
- SERVER-38601 Add regression test for memory leak during planning
Aggregation
- SERVER-37182 Different values when referencing whole object vs. a field of that object after $arrayToObject
- SERVER-37200 $match stage following $listSessions not working against mongos
- SERVER-37750 Optimized $sample stage does not yield
- SERVER-38843 Mapreduce should not create collections with duplicate IDs
JavaScript
- SERVER-31508 native_sleep used by JavaScript should be interruptable
- SERVER-35061 Javascript sleep should always emit an error when interrupted
Storage
- SERVER-29825 Do not allow rename from unreplicated to replicated DB or vice-versa
- SERVER-36873 ReplicationCoordinatorExternalStateImpl::shutdown() must not hold _threadMutex while waiting for _taskExecutor
- SERVER-36968 Rebuild interrupted indexes before checking AuthZN index presence
- SERVER-37408 Add afterClusterTime to initial sync collection scans
- SERVER-37524 In-Memory Storage Engine With Storage Watchdog Crashes The Server
- SERVER-37862 Reduce update ops in initial_sync_wt_cache_full.js
- SERVER-37930 Add test coverage for createIndexes inside nested applyOps
- SERVER-37931 lock_stats_suboperation_logs.js should ignore noise lock stats
- SERVER-38434 queryableBackupMode and wiredTigerEngineConfigString flags are incompatible
- SERVER-38498 decrease number of updates in rollback_wt_cache_full.js
Operations
- SERVER-33469 Make syslog log lines consistent with mongod log lines
- SERVER-35485 Mongo Shell does not accept compressors connection string argument
- SERVER-36977 Initial mongod.log is created using umask vs mode 600
Build and Packaging
- SERVER-35936 MongoDB Community Windows installer fails to install Compass
- SERVER-38421 Requirement on cryptography should reflect what is in the toolchain
- SERVER-38726 Add stable toolchain variables files
Tools
- TOOLS-1709 Set build version and git revision using -ldflags
- TOOLS-2149 Configure build outside Evergreen
Internals
- SERVER-32424 Use WiredTiger cursor caching
- SERVER-34770 Retry on JavaScript execution interruptions in stepdown suites
- SERVER-35768 gssapiServiceName URL parameter does not work
- SERVER-36060 Make unit tests build cleanly on clang-6
- SERVER-36817 replSetFreeze command run by stepdown thread may fail when server is already primary
- SERVER-37120 Turn off linux-replSet-initialsync-logkeeper Build Variant for 3.4 and 3.6 branches
- SERVER-37241 Add testing to verify proper expiration of sessions in the sessions collection
- SERVER-37289 Use authenticated client to run the refreshLogicalSessionCacheNow command in resmoke sharded cluster fixture
- SERVER-37391 plan_cache_index_create.js should wait for index build start, rather than just createIndexes command start
- SERVER-37490 Increase the ConnectTimeout for powercycle
- SERVER-37562 Reduce all IX locks to IS locks in SessionsCollectionRS
- SERVER-37678 Update linter to enforce SSPL in header files
- SERVER-37913 coll_epoch_test1.js does not wait for the config server to replicate after dropping collections.
- SERVER-37916 Make legacy transport layer Sockets log hostnames in TLS version negotiations
- SERVER-38055 Mongod servers started through the shell do not respect TestData.enableMajorityReadConcern
- SERVER-38159 Blacklist umask nopassthrough test on mmapv1
- SERVER-38178 Buffer Overflow in data_builder.h when using terminated StringDatas
- SERVER-38230 Put secondary_reads_passthrough task in the right build variants
- SERVER-38303 Temporarily handle ipv6 failures due to s390x machine without ipv6 enabled
- SERVER-38390 Set requiresAuth to false for certain commands
- SERVER-38415 checkLog.containsWithCount does not reset count before each loop of assert.soon
- SERVER-38616 LDAPArrayIterator behaves incorrectly when initialized with an empty array
- TOOLS-1566 Should not include "ssl" tag for Linux 64 build
- TOOLS-1742 import cycle between util and testutil
- TOOLS-1996 Allow building tools from inside an ordinary GOPATH
- TOOLS-2099 Tools jstests failing on replica set shutdown
- TOOLS-2155 Set version/git-commit via ldflags in Evergreen and Server Evergreen
- TOOLS-2157 Update server vendoring
- WT-4333 WiredTiger cursor cache doesn't handle all possible locked handle states
- WT-4340 The cursor caching layer can incorrectly release too many handle locks
- WT-4343 Unlock when sleeping to allow other log threads to make progress
- WT-4411 Added connection statistic for current total of cached cursors
- WT-4418 Don't keep key/value memory buffers allocated for cached cursors
- WT-4438 Use more accurate statistics for cursor cache totals
3.6.9 Changelog
Security
- SERVER-35418 Allow specifying CAs for incoming and outgoing connections separately
- SERVER-37135 TLSVersionCounts needs to track and report TLS 1.3
Sharding
- SERVER-29160 Sharding commonly uses write concern timeouts of 15 seconds and these are timing out in migration related operations and causing BFs
- SERVER-31563 Reevaluate not_allowed_on_sharded_collection_cmd.js testing
- SERVER-31892 moveChunk with
waitForDelete
doesn't wait for majority write concern - SERVER-35222 Crash on the config server at expired session cleanup
- SERVER-35238 Drop the collection after removing the partially written chunks for mapReduce in mongos_manual_intervention_actions.js
- SERVER-35763 lastWriteDate field can get out of sync between repl set nodes during migration
- SERVER-36831 LogicalSessionCache on mongos does not correctly report active operations
- SERVER-36850 Add a replication passthrough suite to detect errors in LogicalSessionsCache
- SERVER-37330 Add sharded passthrough suites to detect errors in LogicalSessionCache
- SERVER-37430 Destroy sharding task executors and AsyncRequestSenders after the PeriodicRunner is destroyed in mongod shutdown
- SERVER-37496 The balancer shouldn't register a shutdown task after the process is multithreaded
- SERVER-37631 Disable logical sessions if FCV is 3.4
- SERVER-37657 Report the offending oplog entries if a batch contains non-increasing transaction numbers
- SERVER-37735 [3.6] Ensure the full logical session id is included in commands sent by the ShardingTaskExecutor
Replication
- SERVER-20845 re-add replSetReconfig to auditing suite
- SERVER-25175 listIndexes shouldn't include in-progress background indexes
- SERVER-33383 Execution of replSetStepDown can race with unconditional stepdown via heartbeat response
- SERVER-34362 ReplicaSetCoordinatorExternalStateImpl::_dropAllTempCollections() needs to log failed db.
- SERVER-34868 A cursor with the "exhaust" option does not return documents inserted in the same txn
- SERVER-35239 AwaitData cursor must handle getMore from client with higher lastKnownCommittedOpTime
- SERVER-36503 Skip dry-run election during election handoff
- SERVER-36694 Do not hand off elections when in PV0
- SERVER-36746 A failed step down attempt shouldn't unconditionally reset LeaderMode to kMaster
- SERVER-36978 TaskRunner must ensure Client is initialized for thread before running tasks
- SERVER-37118 Coverity analysis defect 105000: Arguments in wrong order
- SERVER-37147 sessions_collection_auto_healing.js should use 2 node replica set
- SERVER-37152 Increase write concern timeouts for writes expected to succeed in tags.js
- SERVER-37227 Reintroduce enableMajorityReadConcern:false server parameter
- SERVER-37396 make rollback_auth.js more robust
Query
- SERVER-13946 Consider putting skip stages below fetch stages
- SERVER-32943 Query during background index build can lead to suboptimal cached plan
- SERVER-36435 Increase maxTimeMS timeout in awaitdata_getmore_cmd.js
- SERVER-36944 applyOps does not permit unknown field names when creating a v:1 index
- SERVER-36951 applyOps should work with a createIndexes command without a UUID
- SERVER-37058 Update with numeric field names inside an array can cause validation to fail
- SERVER-37132 Negation of $in with regex can incorrectly plan from the cache, leading to missing query results
Aggregation
SERVER-36993 mongod crash: Invariant failure indexedOr src/mongo/db/query/index_tag.cpp 237
JavaScript
SERVER-37126 Invoke runSafely for all external implscope methods
Storage
- SERVER-26854 LockStats for sub-operations should not include time for previous sub ops
- SERVER-34713 Progressively declining dropDatabase performance
- SERVER-34866 Blacklist/unblacklist tests in secondary_reads_passthrough suite
- SERVER-35657 Do not delay journal flushes when operations are waiting for oplog visibility
- SERVER-36879 write regression test for stuck cache issue during rollback
- SERVER-36961 createIndexes command should check if index already exists with weak lock
- SERVER-36969 initial_sync_wt_cache_full.js takes too long to complete on slow hosts
- SERVER-37313 FTDC collection blocked during foreground index build on secondary
- SERVER-37618 Capture all the logs in lock_stats_suboperation_logs.js
- SERVER-37749 replSetResizeOplog command does not validate argument
Operations
- SERVER-32064 A logical session id should be included in all command requests from the mongo shell
- SERVER-33606 mongo shell startSession() should fail if the server doesn't support logical sessions
- SERVER-34864