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
String-valued fields should not participate in schema change detection in ftdc
Build and Packaging
- SERVER-35737
install_compass fails on MacOS
- SERVER-37067
Upgrade static OpenSSL to 1.1.0i
- SERVER-37651
Update license files for MongoDB Community Edition
- SERVER-37754
Duplicate license headers in IDL files
Tools
- SERVER-30997
mongo cli --password is masked, but not when using mongodb:// connection string
- TOOLS-2102
Mongorestore does not check for errors decoding the oplog.bson file
Internals
- SERVER-18985
setParameter should log at level 0
- SERVER-31570
Adjust mongobridge port allocations for easier debugging
- SERVER-32369
Invariant incorrectly with message stringifies its argument
- SERVER-33077
checkReplicatedDataHashes should provide more information if a collection doesn't exist
- SERVER-33470
Log archival message, even if successful, in hook_test_archival.py
- SERVER-34248
Investigate why function_string_representation.js started failing
- SERVER-34755
ignore missing collections when shutting down backup_restore.js
- SERVER-34916
Blacklist core/shell_connection_strings.js from retryable_writes_jscore_stepdown_passthrough
- SERVER-34986
CIDR Block That is Exempt from maxConns
- SERVER-35233
Powercycle remote collection validation does not skip views
- SERVER-35235
plan_cache_index_create.js should build initial index set in the foreground
- SERVER-35570
Improve robustness of backup_restore.js around dropping test database
- SERVER-35800
resmoke.py should retry getting a build_id and test_id from logkeeper
- SERVER-35818
provide a stdx::variant
- SERVER-36162
Powercycle - ensure internal crash command has been executed on the remote host
- SERVER-36250
Add support for optionally logging specific negotiated TLS versions
- SERVER-36301
build WT with HAVE_NO_CRC32_HARDWARE on RHEL 6.7 s390x
- SERVER-36451
ContinuousStepdown with killing nodes can hang due to not being able to start the primary
- SERVER-36721
list_local_sessions.js cannot run concurrently with refreshLogicalSessionCacheNow
- SERVER-36732
Wait for all secondaries to be up and electable in election handoff jstests
- SERVER-36747
Add a small time delay to "jstests/ssl/ssl_client_certificate_warning_suppression.js"
- SERVER-36756
Log the githash of the 10gen/jstestfuzz repository when the fuzzer's self-tests fail
- SERVER-36783
Run the secondary_reads_passthrough task of enterprise-rhel-62-64-bit-inmem on rhel62-large
- SERVER-36842
Core dump not generated after invariant failure in powercycle hosts
- SERVER-36919
Add server setParameter tlsWithholdClientCertificate (bool)
- SERVER-36964
Prevent secondaries in SessionsCollectionRS from attempting to set up the sessions collection.
- SERVER-36986
list_local_sessions.js expects non-existent session to exist when running concurrently with LogicalSessionsCache refresh
- SERVER-36987
ChunkVersion::minorVersion truncates to 16 bit
- SERVER-36988
awaitdata_getmore_cmd.js times out when run concurrently with the LogicalSessionCache refresh suite
- SERVER-37041
Update eval blacklists on older branches to account for differences in tests across branches
- SERVER-37064
Wrap "mongod_flags" onto multiple lines for readability
- SERVER-37130
Add TLS version counting to mongos
- SERVER-37149
Remove deadlock in ScheduleBeforeStartupTest
- SERVER-37353
Handle $slice value of LLONG_MIN gracefully
- SERVER-37393
Fix destructor race in
ReplicaSetMonitorManager
- SERVER-37410
Add standalone passthrough suites to detect errors in LogicalSessionCache
- SERVER-37424
Sys-perf: change v4.0 branch batch time to once a week
- SERVER-37425
Longevity tests -- increase batch time to once a year
- SERVER-37437
mongo longevity tests failing
- SERVER-37467
Have collect_resource_info.py recover from transient errors.
- SERVER-37477
Disable TIG daily cron for update_test_lifecycle
- SERVER-37595
[3.6] Handle WT_TRY_SALVAGE error code gracefully
- SERVER-37599
Log exit code of shell-spawned processes
- SERVER-37701
Make SessionUpdateTracker include the uid portion of LogicalSessionId when tracking
- SERVER-37816
[3.6] Add --excludeWithAnyTags=requires_wiredtiger to ephemeralForTest variants
- WT-3276
Add recover=salvage to recover from a corrupted log file
- WT-3735
Add a workgen workload that generates a lot of page splits
- WT-3736
Add statistics to measure contention on lookaside cursor
- WT-3839
Document the undefined behavior when a range truncate overlaps with inserts
- WT-3856
Create a test that runs recovery to different points of time with schema operations
- WT-3879
Disallow checkpoint from evicting metadata pages
- WT-3894
Timestamp queue implementation and statistics improvements
- WT-3917
Enhance WT_CURSOR::reserve documentation around commit visibility
- WT-3943
Include full error message when a python test asserts
- WT-3955
Add verbose option to log more messages on error returns
- WT-3963
Add a schema intensive abort testing
- WT-3968
Use compression ratio to tune page sizes
- WT-4010
Simplify test/format timestamp handling.
- WT-4024
Fix a race between split and next/prev
- WT-4026
Add implementation for existing file extension configuration API
- WT-4048
Generalize timing_stress_for_test split functionality
- WT-4067
Enhance LSM to not pin as much history in cache
- WT-4090
Low priority reads
- WT-4101
Don't abort the eviction server during session verify when oldest_timestamp is held back
- WT-4104
Fix test/format failure during comparing data content with berkeley db
- WT-4111
Improve checkpoint scrubbing algorithm
- WT-4119
Avoid restarts updating / removing during a column store scan
- WT-4125
Ensure that subsequent checkpoints with stable timestamp don't read too much
- WT-4131
Rename lookaside to cache overflow
- WT-4133
Coverity 1393445, 1393446 Dereference before null check
- WT-4134
Rework assertion that we don't discard required history
- WT-4136
Add a new timing stress flag that yields during tree search
- WT-4138
Add an option to timeout waiting for space in the cache
- WT-4139
rename the cursor restart statistic to match implementation
- WT-4140
Cursor walk limits quick eviction page selection unnecessarily.
- WT-4141
Enhance checkpoint with timestamps to unblock eviction sooner
- WT-4144
Fix rollback_to_stable with lookaside history
- WT-4145
Only include the checkpoint timestamp during checkpoints
- WT-4146
Coverity 1393639, unused variable
- WT-4147
Log recovery should not ignore corruption outside of log records in a log file
- WT-4152
Save return value for later comparison in transaction code
- WT-4154
Surface the oldest read timestamp
- WT-4156
Add new wiredtiger_salvage top level API
- WT-4160
Restore performance when timestamps are not in use
- WT-4163
Lint
- WT-4168
Update upgrading documentation for 3.1.0 release
- WT-4169
Fix wt verify dump-pages failure
- WT-4171
Enabling tree walk timing stress causes excessive slowdown
- WT-4172
Add diagnostic hazard pointer checks in more places before freeing refs
- WT-4174
Do not access the lookaside file in rollback_to_stable when running with in_memory=true
- WT-4176
Expose a WT_SESSION.query_timestamp method
- WT-4177
Backup cursor open should force a log file switch
- WT-4178
Fixes for wt_btree_immediately_durable needed for in-memory
- WT-4179
Expose WiredTiger crc32c functions
- WT-4182
Use conservative approach for log checksum errors
- WT-4183
Extend verbose option to log more messages on error returns
- WT-4185
Don't remove all lookaside entries when reading a page
- WT-4186
Log recovery should detect and report corruption within log records
- WT-4187
Coverity: unused value complaints
- WT-4188
Coverity: unchecked return value complaints
- WT-4189
Potential infinite loop in __async_flush_wait().
- WT-4191
Fix Coverity static analysis errors
- WT-4193
test/format snapshot-isolation search mismatch
- WT-4194
Improve fairness of eviction with multiple tables
- WT-4195
When encountering an illegal value, log the value that failed
- WT-4196
Make log corruption checking work regardless of the machine byte order
- WT-4198
Some supported MongoDB architectures don't support crc32 hardware
- WT-4199
Fix an incorrect report of log corruption
- WT-4201
Fix Coverity static analysis issues
- WT-4206
Fix error handling in cursor close routines
- WT-4207
Coverity #1394567: null pointer dereference
- WT-4208
tree walks can be interrupted by locked internal pages
- WT-4210
schema abort child process failing prematurely
- WT-4211
Add automated test for long running prepared transactions
- WT-4212
Update lookaside schema to handle prepared transactions
- WT-4213
Rename lock statistics that have redundant or misleading text
- WT-4215
Allow recovery of backup without salvage
- WT-4216
Use separate counters for page_swap yield and sleep
- WT-4218
Change eviction to evict prepared updates
- WT-4225
Automate a backup test that simulates volume snapshot via dd
- WT-4226
test/format LSM configurations can misconfigure prepare and timestamps
- WT-4229
Lint
- WT-4231
Fix ctags index of functions with attributes
- WT-4233
Change log corruption errors to warnings and truncate log
- WT-4234
Remove documentation mention of legacy tool statlog.py
- WT-4235
Fix workgen tracking of table state across workloads
- WT-4239
Don't allow checkpoints to perform insert-splits in the tree
- WT-4241
GNU-stack section should never be conditionally compiled out
- WT-4242
New log file extension Python test failure
- WT-4243
Fix lookaside sweep to not remove required entries
- WT-4246
Change transaction update list to support indirect references
- WT-4248
Fix checkpoints in schema_abort for slow machines
- WT-4249
Attempt to discard dirty page during verify operation
- WT-4251
Prepared updates cannot be discarded
- WT-4252
Btree debug functions can leak scratch buffers on error.
- WT-4253
Btree debug function to do blind reads doesn't handle row-store internal pages
- WT-4256
Loosen check during rollback_to_stable
- WT-4257
Don't assume timestamps from lookaside are aligned in memory
- WT-4259
Restore ref to the previous state rather than MEM when eviction fails
- WT-4261
Test salvage of out-of-sync metadata/turtle files
- WT-4262
Lock deleted children in eviction of internal pages
3.6.8 Changelog
Sharding
- SERVER-30841
Lower the amount of metadata refresh logging
- SERVER-33645
Determine if splitvector.js should be blacklisted from the retryable_writes_jscore_stepdown_suite
- SERVER-34204
Tailable cursor fails on getMore against a sharded cluster
- SERVER-34913
Blacklist splitvector.js from causally consistent suites
- SERVER-35092
ShardServerCatalogCacheLoader should have a timeout waiting for read concern
- SERVER-36332
CursorNotFound error in GetMore on a secondary with sessions
- SERVER-36741
ChunkManager::getShardIdsForRange invariants when max = MaxKey
- SERVER-36777
Excessive logging with sessions in fCV 3.4
- SERVER-37050
wait for replication in session_collection_auto_healing
Replication
- SERVER-35941
Don't maintain full stable optime candidate list on secondaries in PV0
- SERVER-36128
ReplicationCoordinatorImpl::fillIsMasterForReplSet should return isMaster:false while in shutdown
- SERVER-36664
Use awaitReplication in read_committed_with_catalog_changes.js instead of getLastError
- SERVER-37010
Prevent unexpected elections in initial_sync4.js and initial_sync_rename_collection*.js
Query
- SERVER-26387
Replace noPassthrough/indexbg2.js with test that uses failpoints
- SERVER-34846
Covered index with collated field returns incorrect result when collation not involved in match or sort
Aggregation
SERVER-35084 change_stream_enforce_max_time_ms_on_mongos.js expects getMore to schedule follow-up getMores
Storage
- SERVER-34384
Passthrough test for secondary reads during oplog application
- SERVER-37002
dropping a collection with long index names via rename fails under MMAPv1
Operations
SERVER-36479 Log redaction does not show planSummary when slow queries are logged
Build and Packaging
SERVER-36884 Update curator version on stable branches
Internals
- SERVER-32920
Avoid overriding read preference for the config server in passthrough tests.
- SERVER-34120
scoped connection not being returned to the pool
- SERVER-34144
Powercycle output improvements
- SERVER-34465
Add a testing parameter to choose a permanent sync source
- SERVER-34614
parallelTester should use a different connection for each new test
- SERVER-34923
Replace PeriodicRunnerASIO
- SERVER-35100
Do not log a Python stack trace when a hook dynamic test fails
- SERVER-35123
The periodic_runner_impl starts jobs immediately, unittests should reflect that
- SERVER-36001
Add requires_document_locking tag to noPassthrough/indexbg2.js
- SERVER-36149
Fix privileges on setFCV virtual namespace
- SERVER-36725
periodic_runner_impl_test should manually call tearDown
- SERVER-36743
Stop mongod before log ingestion in startup_logging.js
- SERVER-36947
Enable test commands for perf micro benchmarks
- SERVER-36980
Remove old aggregation fuzzer from evergreen
- WT-4218
Change eviction to evict prepared updates.
3.6.7 Changelog
Security
- SERVER-33857
Missing log redaction due to confusion with Command::redactForLogging()
- SERVER-35032
Non-SSL connections to requireSSL instances get non-informative log message in 3.6.4
Sharding
- SERVER-27725
Use batch insert when migrating chunks
- SERVER-32056
Increase maxExpireTime in tests to account for rounding
- SERVER-33237
Optimize the Range Deleter speed
- SERVER-33697
Provide sanity check on number of cached sessions
- SERVER-34843
Mongod can return operationTime greater than $clusterTime
- SERVER-34897
Introduce parameter to control whether MongoS should automatically retry failed
find
commands - SERVER-35377
Operations on new clients get latest in-memory clusterTime as operationTime
- SERVER-35658
session migration is too sensitive to replica set primary elections
- SERVER-36041
Increase the size of changelog and actionlog
- SERVER-36132
Invariant that chunk migration is actually reflected in the metadata after successful commit
- SERVER-36232
Refresh after chunk migration commit may not see the committed metadata
- SERVER-36248
Do not reject sessions in fCV 3.4
- SERVER-36463
Bypass validation of a dummy signatures for isMaster on the unauthenticated connections
Replication
- SERVER-28389
Pass CallbackCanceled error down to scatter-gather runner algorithm to process
- SERVER-32148
make NamespaceNotFound an acceptable error for emptyCapped and convertToCapped
- SERVER-32907
Turn heartbeat log verbosity back down in tests
- SERVER-33243
Improve logging when a node changes its sync source
- SERVER-34414
Creating a role with buildsIndexes:false node hits an fassert
- SERVER-34895
Stable timestamp can be set to timestamp not in oplog
- SERVER-34941
Stuck with cache full during recovery oplog application
- SERVER-34942
Stuck with cache full during oplog replay in initial sync
- SERVER-35058
Don't only rely on heartbeat to signal secondary positions in stepdown command
- SERVER-35113
Stable timestamp does not advance if lastApplied does not move forward, but all committed timestamp does, on single node RS
- SERVER-35200
Speed up failure detection in the OplogFetcher during steady state replication
- SERVER-35239
AwaitData cursor must handle getMore from client with higher lastKnownCommittedOpTime
- SERVER-35246
Ignore NamespaceNotFound errors when running collMod during checkReplicaSet in replsettest.js
- SERVER-35623
Send a replSetStepUp command to an eligible candidate on stepdown
- SERVER-35624
Enable election handoff by default and update affected tests
- SERVER-35754
Avoid network errors in stopSet() in catchup_takeover_one_high_priority.js
- SERVER-35766
Replication commands sent in candidate's new term can interrupt concurrent vote request
- SERVER-35951
Under PV1, ReplicationCoordinatorImpl::processReplSetFreeze for a single node RS should start an election instead of auto-winning.
- SERVER-35962
buildindexes_false_with_system_indexes.js restarts nodes and should be tagged [requires_persistence]
- SERVER-36083
Add allowMajorityReadConcern:false evergreen variant
- SERVER-36225
Do not hold replication mutex when calling getMinValid
- SERVER-36234
Fix ./jstests/replsets/initial_sync_drop_collection.js to prevent using stale heartbeat info in the test.
Query
- SERVER-33245
mr.cpp can throw in an ON_BLOCK_EXIT handler when there's already an active exception
- SERVER-36239
MatchExpression parser query rule
Aggregation
- SERVER-35961
Remove uninitialized count variable in MapReduce command
- SERVER-35967
$sample with explain(true) hangs
- SERVER-36070
Aggregation with $out results in error when Auditing is enabled
JavaScript
SERVER-35986 Stop running eval command in parallel suite on older branches
Storage
- SERVER-33191
Cache-full hangs on 3.6
- SERVER-34129
Don't hold database or collection locks during oplog truncation
Operations
- SERVER-34160
Mongo client run buffered command when terminated.
- SERVER-35180
Safeguard from setting operation session info values while in a direct client
- SERVER-35795
3.4 secondaries crashing after some time with 3.6 primary
- SERVER-36010
Change log messages for Windows stacktraces to use error() or severe() rather than log()
Build and Packaging
- SERVER-35978
Fix lint on 3.6
- SERVER-36039
Support LibreSSL 2.7 on FreeBSD
Tools
TOOLS-2075 mongoreplay always replays to secondary
Internals
- SERVER-26150
auth_utils.js authutils.assertAuthenticate should handle hangups better
- SERVER-32302
for-each loop over BSONObj is slower than explicit BSONObjIterator in MatchExpressionParser code
- SERVER-32371
features2.js should exclude clusterTime metadata
- SERVER-32639
Arbiters in standalone replica sets can't sign or validate clusterTime with auth on once fCV checks are removed
- SERVER-32792
Blacklist tests that assert on ismaster field of isMaster response in retryable_writes_jscore_stepdown_passthrough
- SERVER-33695
Include the loop name in the before and after recovery files in powertest.py
- SERVER-33841
Add hooks for the mutational fuzzer
- SERVER-34258
Error from mount_drives.sh on Windows
- SERVER-34558
Add SSL_version to client metadata logging
- SERVER-34793
Add call to BF suggestion server on failed task completion
- SERVER-35110
Log locations in set_feature_compatibility_version.js where fatal assertions/other errors are expected
- SERVER-35383
Increase electionTimeoutMillis for the ContinuousStepdown hook used in stepdown suites
- SERVER-35472
resmoke.py shouldn't fall back to stderr when logkeeper is unavailable
- SERVER-35668
Avoid moving concurrency tests to small instances on arm64
- SERVER-35724
Remote EC2 hosts which are not accessible via ssh should fail with system error
- SERVER-35858
Error in call BF Suggestion service
- SERVER-35861
Remove call to dashboard_gen.py in perf.yml
- SERVER-35946
Powercycle kill_mongod function should ensure the service is not in a running state
- SERVER-35993
read_concern_uninitiated_set restarts nodes so must not allow ephemeral storage
- SERVER-36223
Add hook for the fuzzer to not send lsid in the preamble on v3.6
- SERVER-36274
Re-enable --ycsb-throughput-analysis in sys-perf
- SERVER-36448
Disable election handoff in suites that use the ContinuousStepdown hook
- SERVER-36462
Add atlas user to runtime_secret.yml
- TOOLS-1991
Build tools with Go 1.10.1
- WT-4143
Use WiredTiger.turtle.set if it exists but WiredTiger.turtle does not
3.6.6 Changelog
Security
- SERVER-34822
RoleGraph update should ignore index creation on non-role collections
- SERVER-35322
external_auth tests should use unique kerberos credentials cache per test
Sharding
- SERVER-25746
Store advisoryHostFQDNs data in config.mongos collections
- SERVER-33081
Reset
KeysCollectionManager
during rollback properly - SERVER-33327
Session::onMigrateCompletedOnPrimary should not update the lastWriteDate field
- SERVER-33538
mapReduce "replace" on a sharded output collection can lead to UUIDCatalog inconsistencies
- SERVER-33639
Concurrent writes against non-existent database can fail due to distlock acquisition timeout at
createDatabase
time - SERVER-34363
addShard shard registry reload can cause mongos to terminate
- SERVER-34773
The
TransactionReaper
handler classes are not exception-safe - SERVER-34833
Deadlock between the logical sessions' transaction reaper and MMAP V1 durability thread
- SERVER-34857
sharding_legacy_api_test
is flaky due to reliance on the system clock - SERVER-35006
Do not reset KeysCollectionManager
- SERVER-35345
Test that restarted mongoses are able to connect after fCV update
- SERVER-35609
Create initial chunk on primaryShard if only writing one chunk
- SERVER-35653
Revert initial chunk creation optimization
- SERVER-35745
_getNextSessionMods doesn't include oplogReplay flag to query new oplog created during migration
Replication
- SERVER-5461
Add syncSourceHost field to replSetGetStatus output
- SERVER-29844
If node has a higher priority than the primary and is the most up to date, schedule the takeover that will execute faster.
- SERVER-31995
Logged initial sync statistics may exceed 16mb causing fassert
- SERVER-32382
Rollback can time out if oplog entries are large
- SERVER-32687
Ignore collection-not-found when fetching missing documents in sync_tail.cpp during initialSync
- SERVER-32935
improve exception handling in SyncTail::oplogApplication()
- SERVER-33638
CheckReplDBHash should ignore mapreduce incremental collections
- SERVER-33812
First initial sync oplog read batch fetched may be empty; do not treat as an error.
- SERVER-34102
Under PV1, ReplicationCoordinatorImpl::_handleTimePassing for a single node RS should start an election instead of auto-winning.
- SERVER-34110
Ignore NamespaceNotFound errors when refetching documents during rollback
- SERVER-34249
Oplog query on uninitiated replica set node can cause seg fault
- SERVER-34549
Tests refer to ReplSetTest.kDefaultTimeoutMS, which is undefined
- SERVER-34661
Return early when the vote request response has an error
- SERVER-34682
Old primary should vote yes and store the last vote after stepdown on learning of a higher term
- SERVER-34758
replSetGetStatus can deadlock with initialSyncer
- SERVER-34900
initial sync uses different batch limits from steady state replication
- SERVER-35087
"./jstests/replsets/read_concern_uninitated_set.js" and test should be disabled in evergreen for storage engines - ephemeralForTest & mmapv1.
- SERVER-35124
Stepdown suites with MMAP V1 often fail due to
flushing mmaps
taking long time - SERVER-35249
Invariant that we apply to top of oplog on 3.6 replication recovery
- SERVER-35256
Do not treat it as an error if the first batch returned by an oplog query comes back empty in master-slave
- SERVER-35340
Reduce number of iterations in update_and_bulk_insert.js FSM workload
- SERVER-35405
Change default setting for replBatchLimitOperations
Query
- SERVER-33959
CursorManager attempts to dispose of aggregation cursors while holding partitioned lock, which leads to deadlock
- SERVER-34933
pcre verb support
- SERVER-35693
Parsing of $in takes quadratic time due to O(n^2) boost::flat_set constructor
Aggregation
- SERVER-34040
Disallow change stream on "internal" databases and system collections
- SERVER-35750
[3.6 only] Fix assert in change_stream_collation.js to be assert.soon()
JavaScript
SERVER-34515 Invariant failure _scope->exec( "$arr = [];", "group clean up", false, true, false , 2 * 1000)
Storage
- SERVER-31679
Increase in disk i/o for writes to replica set
- SERVER-33078
convertToCapped size is not checked for float -> long long overflow
- SERVER-34630
Change WiredTiger compatibility version setting in 3.6 release
- SERVER-34829
Drop pending reaper must not delete the _dropPendingNamespaces entry until after the drop occurs
- SERVER-34863
Disable LSM testing on 3.2, 3.4 and 3.6 branches
- SERVER-35859
Disable rocksdb buildvariant
WiredTiger
- SERVER-33706
Remove warning message about Windows FS cache configuration
Operations
- SERVER-27230
Poor compression of diagnostic data when replica set is unhealthy
- SERVER-28830
cursorHandleFromId should verify that its not being called on a closed connection
- SERVER-32065
Add support for retryWrites option in mongo shell connection string format
- SERVER-33080
blacklist getLog2.js from the parallel suite
- SERVER-33546
Add numeric syncing field to replSetGetStatus members array
- SERVER-34141
Inconsistent appName in Shard
- SERVER-34159
Fix migration_destination_manager logging
- SERVER-35444
Heap stacks should not be included in serverStatus with heapprofilingenabled
Build and Packaging
- SERVER-32999
Platform Support: remove Debian 7
- SERVER-33395
PPC64 little endian altivec optimizations are broken on newer gcc
- SERVER-34451
MongoDB installation on Windows error: setup wizard ended prematurely
- SERVER-35210
curator release versions should be populated from the project expansions
Tools
- TOOLS-2058
mongoreplay does not show OP_MSG commands
- TOOLS-2062
Support zlib compression in mongoreplay
Internals
- SERVER-26884
Support archiving data files in Evergreen on test failure
- SERVER-29359
Enable SO_KEEPALIVE on egress server connections
- SERVER-31013
Make serverExitCodeMap useful to detect if server crashed on startup before connection established
- SERVER-31400
Record Linux netstat metrics in ftdc
- SERVER-31562
dump replica set oplogs at the end of every failed test
- SERVER-31830
Log values in invariant statements
- SERVER-32602
Multiversion tests are not running enterprise MongoDB on enterprise build variants
- SERVER-32688
FSM replication suites should give secondaries zero votes
- SERVER-32715
Add "Connection refused" to the list of _SSH_CONNECTION_ERRORS in remote_operations.py
- SERVER-32762
Module to upload files to S3
- SERVER-32763
Create archive.json and associate to task in evergreen.yml
- SERVER-32852
Capture FTDC data on failures of the concurrency suite
- SERVER-33009
AWS credential profiles in evergreen.yml
- SERVER-33144
Support archiving data files in Evergreen on test failure - Windows
- SERVER-33193
Enable test failure archive for specific tasks and hooks
- SERVER-33346
Pin a specific version of boto3 for use in etc/evergreen.yml scripts
- SERVER-33420
Add detection metafunctions to StatusWith
- SERVER-33512
Add PeriodicKillSecondaries hook to archive list
- SERVER-33553
OP_KILL_CURSORS fails on mongos: Unable to check out cursor for killCursor
- SERVER-33813
launch_evergreen_ec2_instance.sh should immediately fail if the call to aws_ec2.py is unsuccessful
- SERVER-33817
Powercycle test using kill mongod
- SERVER-33995
mongod crashes with nmap script
- SERVER-34075
powercycle_replication* must run replication recovery to observe canary documents
- SERVER-34345
Make it easier to provide validation rules for server parameters
- SERVER-34371
Stop ignoring errors when the test fixture fails to delete data files
- SERVER-34374
resmoke.py uses bytestrings for representing pathnames, leading to silently failing to clear the dbpath on Windows
- SERVER-34380
system_perf.yml: Remove the compile_proxy task
- SERVER-34481
Improve resiliency of awaitdata_getmore_cmd.js
- SERVER-34540
Remove sleeptest from dbtests
- SERVER-34563
Connect via SRV record fails if the returned record resides in subdomain
- SERVER-34735
Extract structured names from X.509 certificates
- SERVER-34810
Session cache refresh can erroneously kill cursors that are still in use
- SERVER-34851
Disallow index selection for identical min & max values on find
- SERVER-34865
Test archival fails when temporary files are removed
- SERVER-34888
Track status of SSLPeerInfo
- SERVER-34936
Reduce batchtime for rocksdb buildvariant
- SERVER-34950
Use new sys-perf baseline 3.4.14-Baseline
- SERVER-34956
big_object1.js is not resilient to unexpected stepdowns
- SERVER-34996
Save console_output & console_screenshot from aws_ec2.py as artifacts in evergreen.yml
- SERVER-35051
Resmoke should stop the balancer before shutting down sharded clusters
- SERVER-35055
KeyedExecutor
- SERVER-35071
Split MMAPv1 tasks into separate variants in sys-perf
- SERVER-35101
Handle differently a badly formed bindIp argument
- SERVER-35108
Enable signal processing in system_perf.yml
- SERVER-35155
Fix jstests/ssl/x509_invalid.js using explicit X509 client names
- SERVER-35188
Typo in ServiceLiason* types
- SERVER-35190
resmoke.py runs lists of tests in alphabetical order by default
- SERVER-35207
Don't use json.get_history in system_perf.yml
- SERVER-35227
Delete embedded from the 3.6 branch
- SERVER-35229
Improve logging in apply_batch_only_goes_forward.js
- SERVER-35231
Invalid decimal continuation can trigger a dassert when decoding a KeyString
- SERVER-35232
Backport futures to 3.6
- SERVER-35348
Add silent option in the update_test_lifecycle task
- SERVER-35506
The Powercycle wait_for_mongod_shutdown function should ensure the mongod process is no longer running
- SERVER-35588
powertest.py should call replSetReconfigure command only after successful replSetGetConfig
- SERVER-35610
Refine LDAP options parsing
- SERVER-35706
Fix race in ctor for LogicalSessionCacheImpl
- SERVER-35834
Fix compile errors in
dns_name_test
on Microsoft compilers - SERVER-35917
Blacklists tests which use resumeAfter from the sharded collections change streams passthrough
- WT-3698
Threads doing eviction can stall indefinitely when timestamps fail to advance
- WT-3892
Add timing_stress_for_test option for lookaside cleanup
- WT-3914
Add general documentation for prepared transactions
- WT-3937
Tune lookaside sweep to react to workload
- WT-4000
Avoid getting two snapshots when setting a read_timestamp
- WT-4004
test/format snapshot-isolation search mismatch failure
- WT-4016
Measure and improve lookaside performance with stable_timestamp set
- WT-4023
Add messages to a few places that return errors
- WT-4029
Bump the log file version
- WT-4033
Add ability to alter tables without taking exclusive access
- WT-4039
Move row-store missing-value support into the cell unpack code.
- WT-4044
Add an internal API to return if a generation is active
- WT-4049
Performance drop in long tests
- WT-4051
format configures too-small LSM caches.
- WT-4052
Free transaction resources on session reset
- WT-4055
format transaction prepare and logging configuration is incorrect
- WT-4056
New API to configure a minimum compatibility version on open
- WT-4057
round_to_oldest should establish txn snapshot after establishing rounded read timestamp
- WT-4058
Make slot switch quicker when io is slow
- WT-4059
Start lookaside sweep at full records
- WT-4060
Clean up __wt_getenv() error handling.
- WT-4061
Don't rollback during recovery due to cache pressure
- WT-4063
Update docs to make clear when log archiving is disabled.
- WT-4064
Relax checking of lookaside entry count
- WT-4069
Commit of a truncate can leave a page permanently locked
- WT-4070
WiredTiger recovery can checkpoint data referencing pieces of a transaction
- WT-4071
Run unit tests with timestamps disabled
- WT-4074
Lint fix: don't use error labels that do nothing other than return
- WT-4075
Allow timestamp_transaction after prepare
- WT-4076
test/format failure with cache stuck full of internal pages
- WT-4077
Transactional test on zSeries contains wrong LSN in checkpoint
- WT-4078
Splits can leak a page lock if memory allocation fails.
- WT-4079
confirm WiredTiger builds under gcc8
- WT-4080
gcc8 -Wparentheses complains about WiredTiger's __F() macro.
- WT-4081
Improve errors and documentation for syscall.py
- WT-4086
Verify log file versions before opening logging subsystem
- WT-4087
Store current compatibility within WiredTiger
- WT-4091
Make timing_stress_test options for page split race conditions work.
- WT-4093
Temporarily disable test/format LSM and timestamp testing
- WT-4094
Understand variable throughput when running YCSB 50/50 workload
- WT-4098
Add new compatibility_max configuration option
- WT-4105
Optimize cache usage for update workload with history pinned
- WT-4110
test_timestamp_abort failed with missing records
- WT-4115
Valgrind error in est_wt4105_large_doc_small_upd
- WT-4116
Coverity #1393311 Copy-paste error
- WT-4117
Expose WiredTiger crc32c function
- WT-4120
Enhance test/format to dump the cache when timing out
- WT-4122
Ensure compatibility downgrade cleans up old log files
- WT-4127
Add common prefix for compatibility version errors
- WT-4128
Skip checkpoints while stable timestamp doesn't change
3.6.5 Changelog
Security
- SERVER-34418
Disable GCM encryption with ESE on OS X with OpenSSL
- SERVER-34477
Coverity analysis defect 103475: Invalid iterator comparison
Sharding
- SERVER-32681
exact_shard_key_target.js moveChunk should wait for delete
- SERVER-33585
Do not return $clusterTime when no keys are available
- SERVER-33714
Downgrading fCV from 3.6 to 3.4 leaves an admin.system.keys collection on shards that on upgrade is orphaned and renamed without a UUID
- SERVER-33766
Secondary may not invalidate in-memory routing table cache after primary refresh
- SERVER-34098
Move chunk_manager_refresh_bm from unit test to perf microbenchmark
- SERVER-34347
Batch write with ranged query predicate mixed with single target triggers invariant on mongos
- SERVER-34508
Prevent race condition in Migration Destination Manager from swallowing an exception
- SERVER-34571
Invariant fails in destructor of MigrationChunkClonerSourceLegacy on shutdown
- SERVER-34586
Possible double mutex acquisition in ShardServerCatalogCacheLoader
- SERVER-34644
Disable
DollarPrefixedFieldName
checks for moveChunk/mergeChunks - SERVER-34683
Downgrade replicaset from 3.6.4 to 3.4.14 fails due to the presence of
config.system.sessions
- SERVER-34746
Segmentation fault when shard is started with --shardsvr before being added to a shard
Replication
- SERVER-29966
Add invariant that lastOpApplied doesn't change during secondary batch application
- SERVER-30642
Raise election timeouts as a way to provide more stable replica set test topologies
- SERVER-32647
Retry connecting to replica set when given a seed node in Jepsen tests
- SERVER-33026
SyncSourceFeedback request doesn't have a timeout
- SERVER-33287
Create passthrough that kills the primary node
- SERVER-33475
Retried writes doesn't properly wait for writeConcern
- SERVER-33879
config.transactions is not updated during startup replication recovery
- SERVER-33956
A sequence of rename and create collections that do not arrive at the correct end state
Query
- SERVER-33154
{"query" => "foo"} is upconverted incorrectly
- SERVER-34389
Modify change_stream_collation test to avoid failure
- SERVER-34714
An $or query with children which are all trivially false incorrectly optimizes
- SERVER-34725
Group and count plan stages do not set the WorkingSetID output on PlanStage::DEAD state
- SERVER-34767
Randomized KeyString decode test can hit dassert in Decimal
Write Operations
SERVER-27534 All writing operations must fail if the term changes
Aggregation
SERVER-34399 $changeStream with invalid resume token crashes the server
Storage
- SERVER-32989
repairDatabase
can race withdropDatabase
. - SERVER-33743
Use all_committed to set lastApplied on primary nodes
- SERVER-34091
Oplog visibility rules can cause cappedTruncateAfter to erroneously skip record deletion in WiredTiger
- SERVER-34423
collMod interruption may cause invariant failure
- SERVER-34656
Add secondary reads sys-perf test to system_perf.yml
WiredTiger
- SERVER-20056
Log a startup warning if wiredTigerCacheSizeGB is > 80% of RAM
Operations
- SERVER-32876
Don't stall ftdc due to WT cache full
- SERVER-34665
The mongo shell should retry writes on a WriteConcernFailure error response from the server
Build and Packaging
- SERVER-29463
Platform Support: add Debian 9 "Stretch"
- SERVER-44392
Platform Support: remove Ubuntu 16.04 "Xenial" on s390x architecture
- SERVER-32785
Integrate Google Benchmark into SCons
- SERVER-34149
Upgrade zlib to latest
- SERVER-34250
Update Tools builders in Evergreen to match upstream
- SERVER-34461
Source OpenSSL source tarball from boxes.10gen.com
Tools
- TOOLS-1765
mongoreplay crashes with out of memory recording from 8GB pcap file
- TOOLS-1776
mongoreplay hangs on open connection when finishing playback
- TOOLS-1780
Build tools with Go 1.8.x
- TOOLS-1948
Use Go-native TLS dialer on platforms with openssl 0.9.x
- TOOLS-1968
Backport - Need to update spacemonkeygo/openssl fork to support newer OpenSSL libraries
- TOOLS-1999
Use of --uri overrides use of --ssl
- TOOLS-2005
--quiet flag not honored on mongofiles
Internals
- SERVER-25640
Have ReplSetTest run checkDBHashes() in stopSet()
- SERVER-29301
Upgrade MozJS to ESR 45.9.0
- SERVER-33199
Add Resmoke Benchmark suite
- SERVER-33200
Write a new test runner for Benchmark
- SERVER-33201
Add Benchmark resmoke testcase
- SERVER-33202
Add hook to enable resmoke.py to generate perf.json
- SERVER-33203
Write benchmark canary tests
- SERVER-33204
Modify Evergreen.yml to support Benchmark
- SERVER-33329
Server and Shell do not emit TLS "protocol_version" alert messages
- SERVER-33398
Add the new finer grained sys-perf tasks
- SERVER-33438
burn_in_tests.py fails if there are new or modified files and build/benchmarks.txt doesn't exist
- SERVER-33491
Fix benchmark.h compile with -fdirectives-only
- SERVER-33497
Remove the --options option to resmoke.py
- SERVER-33560
Remove deprecated Fixture function declarations from Google Benchmark
- SERVER-33636
wrap transaction_reaper.js writes in an assert.writeOK
- SERVER-33643
Add convenience function to get num cpu cores in benchmarks
- SERVER-33734
Improve jsTestLog filterability
- SERVER-33746
Pipe in additional Evergreen options to resmoke.py
- SERVER-33805
Change Jepsen tasks running in Evergreen to use mongobridge
- SERVER-33938
Increase replication timeout in CheckReplDBHash hook
- SERVER-34210
Fix display of benchmarks with multiple arguments
- SERVER-34218
FieldRef::parse does not completely initialize the FieldRef
- SERVER-34237
Expose means for shell to disable TLS 1.0
- SERVER-34390
Make OS X binaries speak TLS 1.2
- SERVER-34412
powercycle* tasks set timeout_secs in wrong location of task definition
- SERVER-34444
Reestablish a new connection to LocalToRemoteOperations after crash in powercycle.py
- SERVER-34476
Fix OpenSSL linking on FreeBSD
- SERVER-34582
AsyncRequestsSender can block network threads during construction
- SERVER-34605
Change Jepsen tasks to run on the ubuntu1604-build distro in Evergreen
- SERVER-34651
Performance regression on secondary application with retryable batched writes
- SERVER-34657
Add secondary reads YCSB test to system_perf.yml
- SERVER-34667
data_consistency_checks.js incorrectly assumes that the config.mongos collection always exists
- SERVER-34742
Stop running ssl_cert_password.js on OS X
- SERVER-34823
Thread name and connection number are not synchronized in TransportLayerLegacy
- SERVER-34827
retryable writes not in sys-perf-3.6 project
- SERVER-34834
Wait for replication of fCV document before downgrading binaries in clear_and_reinstate_keys_rs.js
- SERVER-34929
Fix malformed preprocessor macro check
- TOOLS-1941
Tools qa-tests often timeout, particularly on server latests
- TOOLS-1978
tools fail eslint testing
- TOOLS-2003
Drop SUSE11 from Evergreen builds
- WT-3851
Optimize wt_compare* routines with NEON instructions for ARM platform
- WT-3886
Identify statistics relevant for prepared transactions
- WT-3910
libwiredtiger-3.0.1.dylib loading failure on OS X
- WT-3959
Recovery timestamp set on restart scenarios need addressing
- WT-3998
Fix a bug where stable timestamp was ignored on shutdown
- WT-4006
Add support for stress timing configurations to test/format
- WT-4009
Create fast path for cursor caching with "overwrite=false"
- WT-4012
Fix lookaside entry counters
- WT-4014
If eviction walk is interrupted, clean up the queue.
- WT-4015
Enhance schema06 unit test to test drops
- WT-4017
When evicting during a checkpoint, avoid splits
- WT-4019
Change test/format to test transaction prepare less often
- WT-4027
Yield cursor operations between restarted search/traverse
- WT-4028
Don't check for a modified page without holding the ref locked
- WT-4031
on-page zero-length row-store values can be discarded from checkpoints
- WT-4032
parent pages can be evicted while being split.
- WT-4034
Re-entering eviction can result in checkpoint corruption
- WT-4035
Truncate information discarded while active
- WT-4036
Fix Coverity false positive: out-of-bounds access.
- WT-4037
WT_REF structures freed while still in use
- WT-4042
Access data handles safely during cursor reopen
- WT-4045
Don't retry fsync calls after EIO failure
3.6.4 Changelog
Sharding
- SERVER-16802
Order of balancer chunk moves depends on order of config.collections
- SERVER-28670
Add sharding metadata refresh metrics section to serverStatus
- SERVER-28981
Sharding balancer prefers shards in a specific order when moving chunks
- SERVER-29807
RangeDeleter should log when its about to wait for majority replication
- SERVER-32210
Stepping down recipient shard's primary while migrating session information can fassert
- SERVER-32604
prevent adding a binary last-stable shard if the cluster is upgrading or downgrading
- SERVER-32885
Overlap chunk clone application on the donor with fetching documents from the recipient
- SERVER-32886
Unnecessary sleeps during chunk migration
- SERVER-33189
Unblacklist sharding tests marked as requiring already released last-stable versions
- SERVER-33763
3.6 drivers fail to communicate with 3.6 sharded clusters running at fCV 3.4
- SERVER-33869
make $changeStream on shards check shardVersion
- SERVER-33971
Nodes in MongoDB sharded cluster crashes with Invariant failure oplogEntry.getWallClockTime()
Replication
- SERVER-29946
Increase heartbeat rate when a secondary has no sync source
- SERVER-30283
PingStats::hit() should not set _numFailuresSinceLastStart to integer max
- SERVER-31399
repl.apply.batches.totalMillis does not record the time spent applying batches
- SERVER-31666
catchup_takeover_one_high_priority should use initiateWithAnyNodeAsPrimary
- SERVER-31669
Increase the election timeout in case 3 of catchup.js
- SERVER-32776
Refresh rollback ID cache on increment
- SERVER-33448
Relax time diff requirements in apply_batches_totalMillis.js
- SERVER-33618
Initial sync should consider applyOps a CrudOpType
Query
- SERVER-31293
Don't consider readPreference "primary" as equivalent to 'slaveOk' in OP_QUERY find path
- SERVER-33302
Missing log redaction for a few failure paths
- SERVER-33542
Using maxTime() on MongoDB 3.4 and 3.6 does not yield the same error code
Storage
- SERVER-32058
Abort of catalog meta-data updates may lead to cache inconsistency
- SERVER-32453
WTKVEngine::getAllIdents mishandles cursor->next return code.
- SERVER-32574
Repairing the local database can cause the WT oplog manager thread to permanently exit.
- SERVER-32641
Some artificial find may crash debug builds of the server
- SERVER-32831
Blacklist change_stream_chunk_migration.js and close_cursor_on_chunk_migration_to_new_shards.js for LSM buildvariant
- SERVER-33086
renameCollection target should never have identical UUID with a different database
- SERVER-33087
Fix the use of dropTarget in renameCollection
- SERVER-33122
add option to disable cursor caching to speed up dropDatabase and collection drop
- SERVER-33233
Don't stall ftdc due to running out of tickets
- SERVER-33854
Fix applyOps field handling
- SERVER-34024
Disable WiredTiger cursor cache by default.
Operations
- SERVER-12644
Move note about noprealloc hurting performance to startup warnings
- SERVER-30114
Monitor cumulative time spent in tcmalloc spin lock
- SERVER-30567
Break out serviceExecutorTaskStats by task type
- SERVER-32498
"desc" field in currentOp output no longer contains the thread name used in log messages
- SERVER-33227
Using the method
connect
in a script will as a side effect update globaldb
.
Build and Packaging
- SERVER-31535
Platform Support: remove Ubuntu 12.04 builds
- SERVER-32923
Platform Support: remove SLES11 builds
- SERVER-33406
Reduce concurrency for s390x compile and compile_all builds to avoid OOM failures
- SERVER-33779
Remove tvOS and iOS variants from the v3.6 branch
- SERVER-33936
3.6 nightly builds not available for download
Internals
- SERVER-30609
Investigate need for markThreadIdle with adaptive service executor
- SERVER-30979
Run the fuzzer with CSRS primary stepdowns
- SERVER-31181
ServiceExecutorAdaptive maxLatencyMicros should be greater than the minimum timer resolution of the OS
- SERVER-31198
Run the concurrency suite with shard stepdowns
- SERVER-31266
Treat queued task reporting for adaptive service executor consistently
- SERVER-31452
Run fuzzer with shard stepdowns
- SERVER-31556
Fix ContinuousStepdown logger
- SERVER-31917
RollbackTest fixture should add more log messages describing the actions it is taking
- SERVER-31999
Race condition in awaitdata_getmore_cmd.js
- SERVER-32034
Replica Set primary becomes unresponsive with adaptive Service Executor
- SERVER-32063
mongos responds with "Unauthorized: there are no users authenticated" to an isMaster request using an lsid
- SERVER-32126
validate() should do basic sanity checks for UUIDs
- SERVER-32241
applyOps reports success even when a nested applyOps fails.
- SERVER-32445
config.transactions table can get out of sync when the TransactionReaper remove entries
- SERVER-32474
resmoke.py logging output from data consistency hooks twice to logkeeper
- SERVER-32477
ASIOSession fails to gracefully teardown sockets
- SERVER-32528
Use fixed version of curator for remote EC2 instances in evergreen.yml
- SERVER-32583
Sys-perf update bootstrap variables to use proper ConfigDict Names
- SERVER-32600
setup_multiversion_mongodb.py may download non-x86_64 binaries on x86_64 platforms
- SERVER-32798
Add duroff variant for MMAPv1
- SERVER-33129
getMinimumTimerResolution() returns maximum resolution on Windows
- SERVER-33150
Race between creating a system.profile collection and assigning UUIDs to non-replicated collections on clean startup
- SERVER-33224
Use windows-64-vs2015-small distros for powercycle tasks
- SERVER-33346
Pin a specific version of boto3 for use in etc/evergreen.yml scripts
- SERVER-33424
Change update_test_lifecycle.py script to use OAuth when authenticating to JIRA
- SERVER-33437
Decorable::declareDecorationWithOwner passes wrong owner pointer to its decorations
- SERVER-33467
Do not free memory returned by ldap_get_option(LDAP_OPT_ERROR_STRING) on Windows
- SERVER-33483
HTTP detection no longer working
- SERVER-33484
Code coverage can't distinguish between files with identical names
- SERVER-33502
Blacklist or rewrite jsCore tests that use the getLastError command from the parallel suite
- SERVER-33520
Enable background refreshing of the logical session cache during the fuzzer test suites
- SERVER-33569
The check for logical session existence must not allow partial results
- SERVER-33572
Provide a bounded, interruptible, thread safe, producer consumer queue
- SERVER-33619
Assign address_type for any EC2 instance in powertest.py
- SERVER-33623
Enable multiversion for aggregate_fuzzer
- SERVER-33640
Blacklist find_and_modify_concurrent_update.js from causal consistency passthrough
- SERVER-33670
Build mongo binaries with -ssl compile flag in system_perf.yml
- SERVER-33682
Python virtualenv not setup in "Gather remote mongo coredumps" post phase in evergreen.yml
- SERVER-33691
Remote EC2 instances should have a log disk
- SERVER-33692
Only backup data files from failed Powercycle tests
- SERVER-33696
Set timeout_secs for powercycle* task to restrict the duration of a single powercycle loop
- SERVER-33751
Auth when connecting to an existing cluster in ReplSetTest
- SERVER-33778
Remove change_stream_remove_shard.js
- SERVER-33843
PeriodicKillSecondaries hook can run validate while a secondary is still applying operations
- SERVER-33848
Update compile flags for sys-perf and performance projects
- SERVER-33935
utils_auth.js should support connecting to clusters running with SSL
- SERVER-33970
New baselines for mongo-perf
- SERVER-34062
powertest.py attempts to access an attribute named address_type rather than its value
- SERVER-34140
remove multiple distro specification for single tasks in evergreen configs
- SERVER-34178
Address lingering issues around TestData.excludedDBsFromDBHash
- SERVER-34213
testshard1.js should use _ids of [0, nItems -1] instead of [1, nItems]
- SERVER-34318
Set timeout for canary insert to 1 hour in powertest.py
- SERVER-34352
Run dbhash check before collection validation in jstestfuzz_sharded_continuous_stepdown.yml
- SERVER-34361
blacklist migration_critical_section_concurrency.js in v3.6 last stable
- WT-1228
Improve performance of WT_SESSION::open_cursor
- WT-3724
Log an error if flushing with F_FULLSYNC fails
- WT-3805
Avoid reading lookaside pages in truncate fast path
- WT-3815
Cursor caching: measure and tune performance
- WT-3829
WiredTiger metadata can be logically inconsistent.
- WT-3848
Enhance new prepare transaction API to enforce post conditions
- WT-3849
Add timestamp validation to WT_SESSION::prepare_transaction
- WT-3850
Implement WT_SESSSION::prepare_transaction
- WT-3867
Bi-weekly WT codebase lint
- WT-3868
Bi-weekly WT codebase lint
- WT-3869
Bi-weekly WT codebase lint
- WT-3870
Bi-weekly WT codebase lint
- WT-3901
Corruption of operation tracking log files
- WT-3904
Reconsider error path in log server thread
- WT-3905
Save the timestamp used for a checkpoint
- WT-3906
Respect stable_timestamp in WT_CONNECTION::close
- WT-3911
Ignore lookaside data on shutdown
- WT-3912
fast-delete pages should re-instantiate the delete transaction's timestamp.
- WT-3913
Enhance cursor operations to account for prepare state
- WT-3922
Allow truncate operations to be prepared
- WT-3923
__wt_txn_context_prepare_check() requires API initialization
- WT-3925
Fix test format operation selection code
- WT-3926
Allow read_timestamp to be set after begin_transaction
- WT-3927
Disable truncate testing with LSM
- WT-3930
Set the recovery timestamp even if recovery doesn't run
- WT-3931
cursor.prev split race
- WT-3932
WiredTiger memory allocation failure in js_test
- WT-3933
test/format failure illegal WT_REF.state rolling back deleted page
- WT-3934
LSM chunk checkpoints can race with system checkpoints
- WT-3935
Enable cursor caching by default in WiredTiger.
- WT-3936
Add multi-threaded tests for prepare_transaction()
- WT-3938
Reduce memory usage with many tables and sessions
- WT-3939
test_txn14.test_txn14.test_log_flush timeout
- WT-3940
s_export issue detected during WiredTiger release execution
- WT-3942
Update test_compact02 to handle being halted by eviction pressure.
- WT-3945
Support libwiredtiger.so checking in s_export
- WT-3946
Truncate segfault with a NULL start cursor
- WT-3947
Allow wiredtiger_open configuration to disable cursor caching
- WT-3948
Data handle loop may terminate without applying operations
- WT-3949
Buffer overflow in WT_CURSOR::modify for string values
- WT-3950
Add some rollback_to_stable statistics
- WT-3952
page-delete update list traversed after it has been discarded.
- WT-3953
test/format can attempt to set an illegal prepare timestamp
- WT-3954
test/format: prepared operations evicted before commit
- WT-3958
Add query API to get most recent checkpoint's stable timestamp
- WT-3961
The all_committed timestamp should be less than any in-flight transaction
- WT-3964
Stop wrapping schema operations in a transaction
- WT-3967
Fix long test for cursor cache sweep
- WT-3969
enhance format tester to account for prepare state
- WT-3971
Make cursor duplication use cursor caching
- WT-3972
Allow more than 64K cursors to be open on a data source simultaneously
- WT-3973
Allow alter to modify app_metadata
- WT-3975
arg format mismatch after rwlock changes
- WT-3977
Print out actual checkpoint stable timestamp in timestamp_abort
- WT-3979
Fix warnings generated with newer Doxygen releases
- WT-3980
failure returning a modified update without a backing "real" update
- WT-3981
Make snapshot consistent with read_timestamp
- WT-3982
Fix transaction visibility bugs related to lookaside usage.
- WT-3984
Fix race conditions around prepare state transitions
- WT-3985
Pre-allocated log files accumulate on Windows
- WT-3987
Avoid reading lookaside pages in truncate fast path
- WT-3990
Fix Coverity warnings mostly in test programs
- WT-3996
Test truncate with timestamps and lookaside
- WT-3997
The cursor walk code can spin without sleeping on restart/split.
- WT-4002
Allow duplicates in api_data.py
- WT-4005
AddressSanitizer in __wt_timestamp_iszero().
- WT-4007
eviction instantiates pages from dead trees.
- WT-4008
Add ARM NEON support for row search operations
- WT-4011
Checkpoint should not read truncated pages
- WT-4022
Avoid WT_RESTART error return during eviction walk
- WT-4025
Allow debug dumping of internal pages
3.6.3 Changelog
Security
- SERVER-31893
Explicitly define timeout for synchronous LDAP calls
- SERVER-32086
Suppress LDAP user cache invalidation log message by default
- SERVER-32779
Upgrade third_party tomcrypt to 1.18.1 final
- SERVER-32933
Allow mongod to start when unable to reach LDAP server
Sharding
- SERVER-27724
Explore whether we can further minimize chunk metadata reloads on shards
- SERVER-28923
Add diagnosability and supportability features for retryable writes
- SERVER-29423
Sharding balancer may schedule multiple migrations with the same source or destination
- SERVER-30152
add safe secondary reads targeted tests for mapReduce
- SERVER-30671
Don't expect operationTime to not change in causal_consistency_shell_support.js
- SERVER-31860
setFCV on a cluster can fail to call setFCV on shards if the config server primary's ShardRegistry is empty
- SERVER-31979
Chunk migration statistics are not recorded in the
moveChunk.commit
changelog entries - SERVER-32235
Blacklist core/drop3.js test from causally consistent workloadss
- SERVER-32368
do not perform UUID check against a shard's config cache in the sharding_csrs_continuous_config_stepdown_WT suite
- SERVER-32554
Source shard stepdown while entering critical section can trigger cloner invariant
- SERVER-32568
The
migration_sets_fromMigrate_flag.js
test is not compatible with sharding continuous stepdown suite - SERVER-32569
Introduce uniform way to allow config servers and shard replica sets to start in non-cluster mode
- SERVER-32592
Stepdown during migration cleanup can crash the source shard primary
- SERVER-32593
CSRS stepdown during migration commit can trigger fassert on source shard primary
- SERVER-32886
Unnecessary sleeps during chunk migration
- SERVER-32901
Pull the CollectionShardingState map out of ShardingState
- SERVER-32924
tag skip_sharding_configuration_checks test with requires_persistence tag
- SERVER-32970
Put back random chunk size initialization in mongos auto split tracking
- SERVER-33234
dropIndexes on mongos should ignore IndexNotFound from individual shards if some shard returned success
Replication
- SERVER-21456
Improve closing connection behavior when stepping down from primary
- SERVER-28290
stepping down due to a higher term seen in a heartbeat should not discard term after stepdown
- SERVER-28895
Remove old form of replSetUpdatePosition command
- SERVER-31707
Test changeStreams on a sharded collection where the shard doesn't know the collection is sharded
- SERVER-32028
Make reconfig() in rslib.js resilient to NodeNotFound error
- SERVER-32209
Reset the in-memory optimes on PV downgrade and upgrade
- SERVER-32361
Rollback tests that expect a fatal assertion after node restart should not wait for connection
- SERVER-32402
dropDatabase after step down can cause fassert
- SERVER-32432
Race condition causes seg fault in ReplicationCoordinatorExternalStateImpl shutdown
- SERVER-32532
Two-phase dropDatabase may not replicate all collection drops before the database drop.
- SERVER-32556
Retryable write on local db hits an invariant
- SERVER-32564
Increase assert.soon timeout when waiting for election in rollback_crud_op_sequences.js
- SERVER-32624
dropDatabase() should wait for collection drops using ReplicationCoordinator::awaitReplication() instead of awaitReplicationOfLastOpForClient()
- SERVER-32783
CollectionCloner::shutdown() should not block on resetting _verifyCollectionDroppedScheduler
- SERVER-32794
Make timeouts unrelated to elections not depend on election timeout
- SERVER-32803
stepup.js should retry replSetStepUp command when it is overtaking another primary
- SERVER-32840
Remove pv0 jepsen tests
- SERVER-32919
initial_sync_many_dbs.js should use less data
Query
- SERVER-28260
Create a killAnyCursor privilege
- SERVER-31484
Operation deadline and awaitData timeout should be separate
- SERVER-31854
After the first drop, assertSchemaMatch() should assert that subsequent drops succeed
- SERVER-32441
3.6 mongod crash on find with index and nested $and/$or
- SERVER-32492
idhack_sharded.js should use _waitForDelete:true in moveChunk
- SERVER-32606
Tailing oplog on secondary fails with CappedPositionLost
- SERVER-33005
Contained $or access planning is incorrect for $elemMatch object, results in invariant failure
- SERVER-33089
Unable to start queryable mongod because it failed to regenerate index for admin.system.users
- SERVER-33092
elemMatchProjection.js incorrectly assumes that shell generates monotonically increasing _id values
- SERVER-33333
Prevent failed cross user getMores from having side effects
Aggregation
- SERVER-31760
Lookup sub-pipeline is not using index for equality match
- SERVER-32349
Resuming a sharded change stream when there are multiple changes with the same timestamp may be impossible
- SERVER-32690
Aggregation can trip invariant related to renamed fields optimization
Storage
- SERVER-32259
Improve error handling for fetchTypeAndSourceURI()
- SERVER-32274
Do not timestamp applyOps writes on standalones
- SERVER-32533
In oplog truncate with WT, don't use a start key
- SERVER-32573
Skip wt_delayed_secondary_read_concern_majority.js when running with WiredTiger's LSM tree
- SERVER-32637
Ensure that upgrading to 3.6 when on pv0 doesn't break if you don't explicitly turn off readConcernMajority
- SERVER-32851
setFeatureCompatibilityVersion can race with createCollection such that fCV 3.6 is set and some collections do not have UUIDs
Operations
- SERVER-32072
DBRef with NumberInt ID changing to float in the shell
- SERVER-32473
Error loading history file on first shell usage
- SERVER-33140
mongodb+srv URI support broken on shell v3.6.2 for Windows
Build and Packaging
- SERVER-32516
Fails to compile with Boost 1.66
- SERVER-32580
Microbenchmarks: update the enterprise branch for mongo v3.6
- SERVER-32649
got "used vector type where scalar is required" when using GCC 7
- SERVER-32932
When testing SLES 12 packages make sure required repos exist
- SERVER-33181
Upgrade ASIO to latest
Internals
- SERVER-21630
Expand resmoke's CheckReplDBHash support to config servers and sharded replica sets
- SERVER-28396
resmoke.py's logkeeper client should respect size limit for POST requests by splitting them up
- SERVER-28822
Improve DBConnectionPool's growth semantics
- SERVER-31636
Split up generational_jstestfuzz* Evergeen tasks into query_fuzzer and update_fuzzer tasks
- SERVER-31670
Change replica set fixture used by replica_sets_jscore_passthrough to make its secondary have zero votes
- SERVER-31768
Don't create the first collection chunk on a primary drained shard
- SERVER-31886
Powercycle tasks running on Windows
- SERVER-31935
Archive process of interest core dumps from remote EC2 instance
- SERVER-31942
Large changes in unreliable tests can prevent test lifecycle update
- SERVER-32060
Move MMAPv1 powercycle tasks to MMAPv1 specific variants
- SERVER-32071
Powercycle - use internal crash
- SERVER-32074
Powercycle - Add stack dump when SIGUSR1 or Windows event is received
- SERVER-32090
Powercycle - pymongo client args are overwritten
- SERVER-32107
Update DNS root nameservers for DNS Query test
- SERVER-32110
Powercycle remote host not accessible in Evergreen timeout phase
- SERVER-32161
MongoDB 3.2+ fails to compile on PPC64LE with glibc 2.26+
- SERVER-32169
A cursor created with a session cannot be killed outside that session
- SERVER-32197
Remote host is missing the debug symbols for hang_analyzer in evergreen.yml
- SERVER-32203
Log the remote EC2 instance status when a failure to access it is detected in evergreen.yml
- SERVER-32205
Dropping admin db sets fCV to 3.4 but leaves UUIDs
- SERVER-32222
change_streams_primary_shard_unaware.js needs to be marked as requiring persistence
- SERVER-32228
Powercycle - handle remote host restarts
- SERVER-32243
Add an option to have the validate hook skip some collections.
- SERVER-32260
Call workload_setup.py from mongo repo
- SERVER-32298
Add a background system task to periodically copy remote statistics in evergreen.yml
- SERVER-32299
Add disk statistics for remote EC2 instances
- SERVER-32376
Blacklist tests that manually call startSession in the retryable_writes_jscore_stepdown_passthrough suite
- SERVER-32403
Increase remote EC2 expire time to 3 hours
- SERVER-32410
Validate User::CredentialData before attempting to perform authentication
- SERVER-32414
Remove stale
stdx::
requirements from lint. - SERVER-32429
black list regex_targeting.js from step down suites
- SERVER-32468
Use a 1-node CSRS in non-stepdown sharding passthroughs tests
- SERVER-32475
Microbenchmarks on v3.6 use master version of enterprise module
- SERVER-32486
Windows builds of the shell should report the failing domain name in DNS lookup failures
- SERVER-32515
Powercycle - rsync file exclude list
- SERVER-32520
Add VPC support for launching AWS EC2 instances
- SERVER-32522
set_read_and_write_concerns.js treats mapReduce "out" field like aggregation's $out stage
- SERVER-32527
Update package tests to use new BUILD2 VPC
- SERVER-32541
Disable Powercycle MMAPv1 task
- SERVER-32551
Cluster with x.509 membership authentication serves client connection with cluster client certificate
- SERVER-32585
Remove unnecessary dependencies from requirements.txt for ese_WT tests
- SERVER-32609
update_test_lifecycle fails when a test group does not have historical data
- SERVER-32614
update_test_lifecycle may fail because datetime.strptime() is not thread safe
- SERVER-32631
specifying --bind_ip localhost results in error "address already in use"
- SERVER-32664
Sys-perf enable running baselines at lower priority
- SERVER-32680
Update perf projects to use newer baselines
- SERVER-32691
Create passthrough for w="majority" with 2-node replica set to address lost test coverage
- SERVER-32704
sys-perf: Skip validating oplog as enabled by SERVER-32243
- SERVER-32740
Set bootstrap.ycsb_dir and bootstrap.workloads_dir in system_perf.yml
- SERVER-32766
net.bindIpAll with net.ipv6 fails with "listen: Address already in use, terminating"
- SERVER-32772
dbtest task in Evergreen should write to task directory
- SERVER-32774
Ensure change_streams_secondary_reads suite has voting secondaries
- SERVER-32788
Update "secondary performance" sysperf test to use nonvoting secondaries
- SERVER-32806
retried findAndModify not using oplogHack when querying for pre/post image oplog entry
- SERVER-32891
Sys-perf change order of mongodb_setup and workload_setup calls
- SERVER-32896
Upload dsi-artifacts.yml in system_perf.yml
- SERVER-32925
sys-perf 3.6 should run the change stream tests
- SERVER-32987
Move the contents of the 'uuid' library to be under 'base'
- SERVER-33068
run_check_repl_dbhash.js hook exits without actually running dbhash on a replica set
- SERVER-33142
Experiment with disabling cluster reuse in system_perf.yml
- SERVER-33147
Limit the -j/num_jobs_available for high core ARM CI servers
- SERVER-33158
Logical Session refresh batches are too large
- SERVER-33219
Add a backpressure mechanism to the CRUD client in backup_restore*.js tests
- SERVER-33236
Update perf.yml to use ssh form of git clone
- WT-2705
High throughput cache bound many threaded workloads can experience long latencies
- WT-3074
Automate a test to stress eviction walk with many active trees
- WT-3133
Detect or track long latency operations
- WT-3295
Allow LSM to merge into custom data sources
- WT-3565
Test and understand mixed timestamp/no-timestamp usage to same data
- WT-3587
Remove HAVE_VERBOSE conditional compilation
- WT-3597
Add a diagnostic check for updates to the same key out of timestamp order
- WT-3632
Increase how granularly cache usage settings can be configured
- WT-3654
Fix warning in Windows build on evergreen
- WT-3695
format failed to report a stuck cache
- WT-3716
Restore the WT_VERB_TEMPORARY verbose flag.
- WT-3720
flags macros cast flags to unsigned values, hiding warnings.
- WT-3725
Add statistics to locks around timestamp structures
- WT-3732
Handle adding WT indices while cursors on the table are open
- WT-3734
Fix undefined behavior in verbose output
- WT-3738
Review internal session allocation accounting
- WT-3740
race in page dirty-byte decrement.
- WT-3750
Fast-path fs_directory_list of a single file.
- WT-3753
Building on Windows --enable-java
- WT-3766
Lookaside sweep for obsolete updates
- WT-3767
Avoid lookaside instantiation for faster reads
- WT-3768
Lookaside optimization: birthmarks
- WT-3769
Fix a bug in reverse cursor walks with particular delete patterns and prefix compression enabled
- WT-3772
Hot backup causes uncontrolled growth of WiredTigerPreplog files
- WT-3774
Enhance Python lookaside testing to cover cursor modify
- WT-3775
Improve commit timestamp is older than oldest timestamp error message
- WT-3779
Add support for string formats with WT_CURSOR::modify
- WT-3780
Improve error messages on invalid WT_CURSOR::modify usage
- WT-3783
Fix transaction isolation to use the correct enum
- WT-3787
test_compact02 failed as compaction halted due to eviction pressure
- WT-3790
Switch statistics to rdtsc from epoch calls
- WT-3792
LSM version 1 metadata incompatibility
- WT-3793
WiredTiger page debug dump functions should unpack integer keys
- WT-3794
Coverity 1383547 and lint
- WT-3795
lint cleanups for the op-tracking software, reduce record write size.
- WT-3796
Report a better error message if transaction commit fails
- WT-3799
Test/format with timestamps enabled pin cache full
- WT-3806
Make sure rdtsc values move forward in time
- WT-3807
clang static analysis updates
- WT-3809
Fix a bug in lookaside related to birthmarks
- WT-3810
wt_rdtsc calibration needs to be longer and verify validity
- WT-3811
Add basic ability to visualise operation tracking
- WT-3812
debugging page output should handle complex key/value items.
- WT-3816
Enable prefix compression on the lookaside table
- WT-3818
__rec_txn_read() code order cleanup
- WT-3819
clang static analysis improvements
- WT-3820
Add a WT_SESSION.breakpoint method for Python debugging.
- WT-3822
Update WiredTiger copyrights to 2018
- WT-3824
tsc_nsec_ratio can compute to zero and cause divide by zero bug
- WT-3825
Fix calculation of CPU ticks per unit time
- WT-3826
random-abort test failure
- WT-3827
test_compact02 failure
- WT-3828
Link error on OS/X for __wt_process data reference
- WT-3831
uninitialized buffer value in statlog server path comparison
- WT-3832
Fixup shell script warning messages
- WT-3833
test/format cache_minimum value error
- WT-3835
cursor remove tries to return a key that doesn't exist
- WT-3840
Dump more information when data corruption is encountered
- WT-3841
Fix error message pattern in timestamp09
- WT-3842
full-build Friday & lint
- WT-3844
Checkpoints can hang on limbo pages
- WT-3845
Compiler warning in examples using GCC 5.4.0
- WT-3846
Refine operation tracking visualization tool
- WT-3847
Add a stub API for prepared transaction
- WT-3852
Update debugging when committing at an earlier timestamp
- WT-3853
LSM version 1 metadata incompatibility
- WT-3854
Remove write lock from commit path, leaving old entries in queue
- WT-3860
lint
3.6.2 Changelog
Security
SERVER-31625 The contents of {USER} needs to be escaped when querying for the groups using LDAP server
Sharding
- SERVER-28992
Cleanup mongos write commands execution
- SERVER-31982
Shard does not call config commit chunk migration command with majority writeConcern nor checks for writeConcern errors.
- SERVER-32202
Do not clear the cached sharding filtering information on replication state changes
- SERVER-32255
UUIDs may be absent from shard secondary local collections
- SERVER-32480
Remove CatalogCache retrieval methods, which take StringData
- SERVER-32529
Requiring replSet for shards breaks Queryable Backup
Replication
- SERVER-30626
Remove TopologyCoordinator interface
- SERVER-31267
CollectionCloner fails if collection is dropped between getMore calls
- SERVER-31684
QueryPlanKilled (operation exceeded time limit) in $changeStream with updateLookup
- SERVER-31749
Clarify the reason temporary unique collection names are made
- SERVER-32098
Disallow operations on drop-pending collections through applyOps
- SERVER-32136
initial_sync_drop_collection.js should wait for system to stabilize after restarting node
- SERVER-32224
Disable chaining in initial_sync_drop_collection.js
Aggregation
- SERVER-32282
Aggregation text search returns text score even if it wasn't requested when targeting multiple shards in a sharded cluster
- SERVER-32430
DocumentSourceSort sorts array documents incorrectly if there is a non-simple collation
Storage
- SERVER-29909
Libraries db/db_raii and db/s/sharding are directly cyclic
- SERVER-31750
Always log renameCollections in our tests
- SERVER-32242
Fix race in CompatibleFirstStress lock manager test
- SERVER-32315
Remove IndexObserver
Operations
SERVER-32396 mongo shell failed to connect with 3.6 connection string SRV
Build and Packaging
- SERVER-31875
Fix long link times on OS X by passing -no_deduplicate to the linker
- SERVER-32415
MongoDB msi installer for Compass contains a typo
Internals
- SERVER-30538
check that oplogTruncateAfterPoint is correct in PeriodicKillSecondaries hook
- SERVER-31972
Reduce the number of iterations for the toggle_feature_compatibility.js workload
- SERVER-31997
Add additional unittesting for CompatibleFirst policy
- SERVER-32091
Powercycle - remove mongod.lock file for MMAPV1 test
- SERVER-32145
Avoid dropping lock before cleaning up DocumentSourceCursor's PlanExecutor
- SERVER-32246
PID file permission on v3.6 make it not not monitorable using pid file
- SERVER-32497
implicitly_retry_on_database_drop_pending.js calls tojson() inside of a loop
- SERVER-32500
Disable the sharding Evergreen task on the Enterprise OS X 10.10 MMAPv1 builder
3.6.1 Changelog
Sharding
- SERVER-29397
Invariant failure on config server when inserting tag into config.tags
- SERVER-30226
Force the recipient shard to refresh its metadata after migration commit
- SERVER-30768
Primary queries using maxTimeMS cause temporary shard write unavailability if ExceededTimeLimit
- SERVER-31056
Remove all usages of the default constructor of ScopedCollectionMetadata outside of MetadataManager
- SERVER-31627
ShardingTest.checkUUIDsConsistentAcrossCluster can fail to see collection in config.cache.collections
- SERVER-31865
setFCV on config server should only generate UUIDs for non-dropped sharded collections
- SERVER-31984
A migration will simply report "Data transfer error" when we have rich error details on the destination shard that are logged but not returned to the user
- SERVER-32043
Disallow users from creating new indexes in config.transactions
- SERVER-32055
Improve multi thread performance for retryable writes
- SERVER-32123
Enable sign range optimization for clusterTime
- SERVER-32149
ShardingCatalogManager::getDatabasesForShard should check if query was successful
- SERVER-32372
Mongos crashes on bulk inserts which size are slightly bigger than maxBsonObjectSize
- SERVER-32385
"CommandNotFound: no such command" in mongodb logs on 3.6
Replication
- SERVER-30457
Cancel catchup takeover if primary caught up according to heartbeats
- SERVER-31990
Rollback can abort on long collection names.
- SERVER-32085
$changeStream reports incorrect documentKey for unsharded collections that become sharded
- SERVER-32114
Delete unused rollback code
- SERVER-32131
ChangeStreams lookup_post_image.js test makes assumptions that don't hold up in secondary read passthrough
- SERVER-32159
fix typo in sync_tail.cpp fillWriterVectorsAndLastestSessionRecords()
- SERVER-32167
do a second majority write on oldPrimary before committed read in read_committed_after_rollback.js
- SERVER-32178
Do not use IDL on oldest oplog entry
Query
- SERVER-31978
Add an invariant that DocumentSourceCloseCursor does not execute on a mongod for a sharded $changeStream
- SERVER-32046
Arrays of certain NumberDecimals can trigger an invariant failure
- SERVER-32109
$rename does not update value if existing "to" field has the same numeric value but different type.
- SERVER-32173
Add deprecation warning to "snapshot" option on queries
Write Operations
- SERVER-8538
Deprecate $atomic/isolated update option
- SERVER-32048
Updates using a numeric path component may cause index entries not to be created
Aggregation
- SERVER-31731
Test that mongos accepts a --timeZoneInfo parameter, and can correctly execute expressions using time zones
- SERVER-31885
changeStream cursor is not returned on a mongos when the database does not exist.
Storage
- SERVER-31304
remove SnapshotName class
- SERVER-31906
Test that applyOps can clone admin.system.version preserving its UUID
- SERVER-31952
return error if collMod provides a UUID that does not match the UUID of the collection specified
- SERVER-32022
allow enableMajorityReadConcern=false to work
- SERVER-32118
applyOps view creation should not assign UUID
- SERVER-32226
oldest_timestamp should track the last applied time, during initial sync
Operations
SERVER-29453 Disallow removing the featureCompatibilityVersion document
Build and Packaging
- SERVER-32211
install_compass experience on OSX needs improvement
- SERVER-32286
Remove Type=forking from Debian SystemD service file
Tools
TOOLS-1895 qa-dump-restore-archiving oplog_rollover_test.js
Internals
- SERVER-30770
system_perf.yml: Use new DSI interface and cleanup
- SERVER-31194
Add a version of retryable_writes_jscore_passthrough.yml with stepdowns
- SERVER-31225
The mongod process forks before listening for connections
- SERVER-31660
Bring BSONObj parsers back for IDL generated commands
- SERVER-31791
UUIDs should be added to local collections for replica sets only on clean startup
- SERVER-31808
HostAndPort for replSetInitiate() no longer finds hostname for localhost
- SERVER-31845
WT performance regression with write retryability enabled
- SERVER-31864
applyOps command with UUID containing op must require granular privileges
- SERVER-32053
explain3.js should assert that its writes succeed
- SERVER-32073
Improve signal given by list_local_sessions.js
- SERVER-32087
Run test stage of sys-perf and mongo-perf failures should lead to red evergreen boxes
- SERVER-32105
Require shard servers and config servers to be started with --replSet or 'replSetName'
- SERVER-32106
Migration of txn oplog entries can trigger fassert in secondary replication
- SERVER-32164
Shell SRV implementation does not allow
authSource
from TXT records to be used - SERVER-32238
Revert erroneous high error codes
- TOOLS-1688
Evergreen tests broken in master
- TOOLS-1827
Implement Initial DNS Seedlist discovery spec
- TOOLS-1861
build.sh script doesn't abort on error
- TOOLS-1878
qa-tests-unstable force_table_scan.js
- TOOLS-1880
qa-tests-unstable no_primary_error_code.js
- TOOLS-1881
qa-tests-unstable no_sharded_secondary_reads.js
- WT-3079
Make sure eviction visits all trees
- WT-3776
Cursor remove operation unpins page too early
- WT-3786
Transactions with timestamps should read their writes