3.4 Changelog
On this page本页内容
- 3.4.24 Changelog
- 3.4.23 Changelog
- 3.4.22 Changelog
- 3.4.21 Changelog
- 3.4.20 Changelog
- 3.4.19 Changelog
- 3.4.18 Changelog
- 3.4.17 Changelog
- 3.4.16 Changelog
- 3.4.15 Changelog
- 3.4.14 Changelog
- 3.4.13 Changelog
- 3.4.12 Changelog
- 3.4.11 Changelog
- 3.4.10 Changelog
- 3.4.9 Changelog
- 3.4.7 Changelog
- 3.4.6 Changelog
- 3.4.5 Changelog
- 3.4.4 Changelog
- 3.4.3 Changelog
- 3.4.2 Changelog
- 3.4.1 Changelog
3.4.24 Changelog
Security
- SERVER-37135
TLSVersionCounts needs to track and report TLS 1.3
- SERVER-38945
SSL performance regression
- SERVER-43751
Recompute compressor manager message parameters
Sharding
SERVER-36315 After stepdown the CSRS dist lock manager keeps trying to unlock locks
Replication
- SERVER-37846
writeConcern can be satisfied with an arbiter if the write was committed
- SERVER-40355
rs.config that contains an _id greater than the number of nodes will crash
- SERVER-43879
OplogInterfaceLocal::next should return an owned BSON obj
Query
- SERVER-39019
$elemMatch $ne serialization is incorrect, doesn't roundtrip
- SERVER-43699
Find $mod can result in UB
- SERVER-44050
Arrays along 'hashed' index key path are not correctly rejected
- SERVER-44571
Documents involved in SERVER-44050 corruption scenario cannot be updated or deleted after upgrade
Build and Packaging
- SERVER-37772
Platform Support: Add Community & Enterprise RHEL 8 x64
- SERVER-43359
Add missing repo config for RHEL8
Internals
- SERVER-29020
Upgrade ASIO
- SERVER-30269
Bump ASIO to capture bug fixes
- SERVER-38002
Upgrade Pcre to at least 8.42
- SERVER-40669
install_compass should not explicitly use python3
- SERVER-43085
Regenerate all testing certificates with SHA-256 instead of SHA-1
- SERVER-43151
Error in aggregation assertion at value.cpp:1368
- SERVER-44064
Perform explicit cast on MessageCompressorManager parameter
- SERVER-44140
Use signal processing without DSI
- SERVER-44312
Specify evergreen auth in performance tests for signal processing
- SERVER-44611
Fix evergreen.yml in v3.4
- SERVER-44651
Update signal processing version
- SERVER-44993
ssl_count_protocols.js should not evaluate test most protocols on OS X on 3.4
- WT-4956
Handle the case where 4 billion updates are made to a page without eviction
3.4.23 Changelog
Sharding
SERVER-36394 mongos should reset chunk size tracking information when autosplit = false or splitvector returns too few split points
Replication
- SERVER-42055
Only acquire a collection IX lock to write the lastVote document
- SERVER-42653
Always waitUntilDurable when writing lastVote document
Query
- SERVER-41829
findAndModify ignores filter expressions that are not objects
- SERVER-43074
Do not use a global variable to encode 'multikeyPath' information when writing out catalog documents
Storage
SERVER-42652 Fix issue with rename collection
Operations
SERVER-42257 Add new shell startup banner
Build and Packaging
- SERVER-42172
Add Ubuntu 14.04 to v3.4
- SERVER-42603
Recent service file change may cause cyclic dependencies
Internals
- SERVER-39928
Stop testing PyMongo with Python 2.6 in drivers-nightly
- SERVER-42343
WiredTigerLAS.wt grows when lagged node is in maintenance mode
3.4.22 Changelog
Security
- SERVER-40393
Disable SSL_MODE_RELEASE_BUFFERS in ASIO
- SERVER-41069
Ability to disable authorization via x509 extensions
Replication
- 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.
Query
SERVER-41863 Make sleep command check that server clock has advanced before returning
Storage
SERVER-17010 Reduce file handle usage in File based Sorter
Build and Packaging
- SERVER-36043
systemd unit for mongod starts before multi.user target
- SERVER-40242
Update banner inclusions for vendored tools
- 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-42089
Platform Support: Remove Enterprise RHEL 6.7 zSeries from 3.4 and 3.6
- SERVER-42172
Add Ubuntu 14.04 to v3.4
- SERVER-42233
Bump Windows package dependencies
Internals
- SERVER-20983
Add requirements.txt for resmoke.py
- SERVER-21538
Choose clock source for reading current time dynamically at startup
- SERVER-28421
Implement ClockSource::waitForConditionUntil()
- SERVER-37984
Upgrade yaml-cpp >= 0.6.0
- SERVER-38098
MongoDB's yaml-cpp is rejected by latest MSVC
- SERVER-38303
Temporarily handle ipv6 failures due to s390x machine without ipv6 enabled
- SERVER-38984
Attach IDs to users
- SERVER-39642
Decrement egress counter when scoped connection not returned to the pool
- 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-41148
FTDC is calling boost::filesystem without passing an error_code parameter
- SERVER-41401
patch_files.txt doesn't distinguish between enterprise and community files
- SERVER-41546
SysV init scripts should verify PIDfile exists instead of failing
- SERVER-41680
Propagate ${branch_name} Evergreen expansion to fuzzer invocation
- SERVER-41789
sys-perf: Use bootstrap.overrides in bootstrap.yml config file
- SERVER-41967
Symlink /data to Z instead of C
3.4.21 Changelog
Security
SERVER-40393 Disable SSL_MODE_RELEASE_BUFFERS in ASIO
Replication
SERVER-40628 Initial sync could fail under replsetprio1.js settings
Aggregation
SERVER-39487 Aggregation operator $sqrt output for NumberDecimal is the same as $exp
Storage
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-40259
Include third party notices for ASIO and variant
- 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-40491
Update Debian 8 image for package test
Internals
- SERVER-20983
Add requirements.txt for resmoke.py
- SERVER-36750
blacklist memory.js on ppc64le in memory variants
- SERVER-39056
Further refine readWriteAnyDatabase
- 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-41088
Propagate Evergreen order field to Cedar for system perf
- WT-4615
Sync backup file before returning backup cursor
3.4.20 Changelog
Sharding
- SERVER-36901
sh.status() "Last reported error:" is actually 5th Latest error message
- SERVER-39030
Wrong info logged by splitVector
Replication
- SERVER-28053
allow network errors when turning off rollbackHangBeforeStart failpoint
- SERVER-39758
double_rollback.js should reliably wait for node 0 to complete rollback
Query
- SERVER-26463
Increase ttl_capped.js timeout from 5 to 60 seconds
- SERVER-38793
nonrepairable feature tracker for collation does not get set for createCollection
Aggregation
SERVER-39166 $graphLookup should force a pipeline to split in sharded cluster
Storage
SERVER-39723 Change listIndexes command behavior to show in-progress index builds
Tools
- TOOLS-2030
mongodump does not dump system.js collections
- TOOLS-2109
Build Tools with Go 1.11
Internals
- SERVER-38954
Increase query execution time for the test case in max_time_ms.js that expects it to hit the time limit
- SERVER-39058
Synchronize user set modification in AuthorizationSession with Client
- SERVER-39331
Remove StressTest from network_interface_asio_integration_test
- SERVER-39746
System-Performance: Write project in runtime.yml
- 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
3.4.19 Changelog
Sharding
- SERVER-28716
call fsync after setup before calling collStats/dbStats in jstests/sharding/stats.js
- SERVER-30768
Primary queries using maxTimeMS cause temporary shard write unavailability if ExceededTimeLimit
- SERVER-32568
The
migration_sets_fromMigrate_flag.js
test is not compatible with sharding continuous stepdown suite - SERVER-37496
The balancer shouldn't register a shutdown task after the process is multithreaded
- 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-38062
Add assert.commandWorked() to commands in read_pref_cmd.js
Replication
- SERVER-22766
Dynamic oplog sizing for WiredTiger nodes
- SERVER-35608
Invariant that term from lastAppliedOptime is never greater than our current term
Query
- SERVER-13946
Consider putting skip stages below fetch stages
- SERVER-35455
QueryPlannerAccess should hold owned pointers by unique_ptr rather than raw pointer
- SERVER-37132
Negation of $in with regex can incorrectly plan from the cache, leading to missing query results
- SERVER-38070
Infinite loop in aggregation expression
- 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-37750
Optimized $sample stage does not yield
Storage
- SERVER-30151
Size specification for oplog resizing
- SERVER-36968
Rebuild interrupted indexes before checking AuthZN index presence
- SERVER-37749
replSetResizeOplog command does not validate argument
- SERVER-38434
queryableBackupMode and wiredTigerEngineConfigString flags are incompatible
- SERVER-38501
swap out new ActionType for replSetResizeOplog command on 3.4
Operations
SERVER-33469 Make syslog log lines consistent with mongod log lines
Build and Packaging
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-18985
setParameter should log at level 0
- SERVER-23818
Include Evergreen task ID in metadata sent to logkeeper
- SERVER-36250
Add support for optionally logging specific negotiated TLS versions
- SERVER-37120
Turn off linux-replSet-initialsync-logkeeper Build Variant for 3.4 and 3.6 branches
- SERVER-37647
Validation hook sets fCV to 3.4 no matter what version it currently is
- SERVER-37913
coll_epoch_test1.js does not wait for the config server to replicate after dropping collections.
- TOOLS-1566
Should not include "ssl" tag for Linux 64 build
- TOOLS-1742
import cycle between util and testutil
- TOOLS-1996
Allow building tools from inside an ordinary GOPATH
- TOOLS-2155
Set version/git-commit via ldflags in Evergreen and Server Evergreen
- TOOLS-2157
Update server vendoring
3.4.18 Changelog
Security
SERVER-35418 Allow specifying CAs for incoming and outgoing connections separately
Sharding
SERVER-26915 jumbo1.js auto-balancing is too slow in the stepdown suite
Replication
- SERVER-25175
listIndexes shouldn't include in-progress background indexes
- SERVER-35200
Speed up failure detection in the OplogFetcher during steady state replication
- SERVER-36978
TaskRunner must ensure Client is initialized for thread before running tasks
- SERVER-37010
Prevent unexpected elections in initial_sync4.js and initial_sync_rename_collection*.js
- SERVER-37152
Increase write concern timeouts for writes expected to succeed in tags.js
Query
- SERVER-28251
Fix race condition in index_killop.js
- 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-37058
Update with numeric field names inside an array can cause validation to fail
Storage
SERVER-37333 [3.4] applyOps does not validate background index spec for system.indexes inserts
Operations
SERVER-34864 String-valued fields should not participate in schema change detection in ftdc
Tools
TOOLS-2102 Mongorestore does not check for errors decoding the oplog.bson file
Internals
- SERVER-28095
Clearing the dmesg buffer should not errexit in evergreen.yml
- SERVER-36718
Validation hook should upgrade before validating index consistency
- 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-36919
Add server setParameter tlsWithholdClientCertificate (bool)
- SERVER-36987
ChunkVersion::minorVersion truncates to 16 bit
- 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-37127
Update baseline comparison for sys-perf
- SERVER-37130
Add TLS version counting to mongos
- SERVER-37367
Notification::waitFor is not interruptible in 3.4
- SERVER-37393
Fix destructor race in
`ReplicaSetMonitorManager`
- 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-37647
Validation hook sets fCV to 3.4 no matter what version it currently is
3.4.17 Changelog
Security
SERVER-33857 Missing log redaction due to confusion with Command::redactForLogging()
Sharding
- SERVER-27599
Sharding tests should not rely on the order of entries returned when querying the config.shards collection
- SERVER-27725
Use batch insert when migrating chunks
- SERVER-29702
add assert.commandWorked() around addShard in shard_insert_getlasterror_w2.js
- SERVER-33237
Optimize the Range Deleter speed
- SERVER-34897
Introduce parameter to control whether MongoS should automatically retry failed
find
commands - SERVER-36132
Invariant that chunk migration is actually reflected in the metadata after successful commit
- SERVER-36232
Refresh after chunk migration commit may not see the committed metadata
Replication
- SERVER-32148
make NamespaceNotFound an acceptable error for emptyCapped and convertToCapped
- SERVER-32647
Retry connecting to replica set when given a seed node in Jepsen tests
- SERVER-34414
Creating a role with buildsIndexes:false node hits an fassert
- SERVER-34682
Old primary should vote yes and store the last vote after stepdown on learning of a higher term
- SERVER-35962
buildindexes_false_with_system_indexes.js restarts nodes and should be tagged [requires_persistence]
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
JavaScript
SERVER-35986 Stop running eval command in parallel suite on older branches
Storage
SERVER-34602 convertToCapped collection drop does not commit WUOW on 3.4
Operations
- SERVER-34141
Inconsistent appName in Shard
- SERVER-34160
Mongo client run buffered command when terminated.
- SERVER-36010
Change log messages for Windows stacktraces to use error() or severe() rather than log()
- 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-29008
Define TestData.numTestClients property so fuzzer knows there are concurrent clients
- SERVER-31434
Give mongo::Value at least pointer alignment
- SERVER-34558
Add SSL_version to client metadata logging
- SERVER-34614
parallelTester should use a different connection for each new test
- SERVER-34735
Extract structured names from X.509 certificates
- SERVER-34793
Add call to BF suggestion server on failed task completion
- SERVER-35100
Do not log a Python stack trace when a hook dynamic test fails
- SERVER-35668
Avoid moving concurrency tests to small instances on arm64
- SERVER-35858
Error in call BF Suggestion service
- SERVER-35861
Remove call to dashboard_gen.py in perf.yml
- SERVER-36001
Add requires_document_locking tag to noPassthrough/indexbg2.js
- SERVER-36111
Bug in job.py related to functionality for archiving data files in 3.4
- SERVER-36149
Fix privileges on setFCV virtual namespace
- SERVER-36462
Add atlas user to runtime_secret.yml
- TOOLS-1991
Build tools with Go 1.10.1
- TOOLS-2066
MongoDB 3.4's vendored github.com/10gen/openssl doesn't define FIPS functions
- WT-3637
Fix a heap use after free from evicting of a page that just split.
3.4.16 Changelog
Security
SERVER-35322 external_auth tests should use unique kerberos credentials cache per test
Sharding
- SERVER-25746
Store advisoryHostFQDNs data in config.mongos collections
- SERVER-30050
top_chunk_autosplit.js should use w: majority when updating balancer settings
- SERVER-34644
Disable
DollarPrefixedFieldName
checks for moveChunk/mergeChunks
Replication
- SERVER-5461
Add syncSourceHost field to replSetGetStatus output
- SERVER-30947
checkOplogs function should dump more oplog entries on failure
- SERVER-31165
Print mismatched oplog entries in checkReplOplogs
- SERVER-31995
Logged initial sync statistics may exceed 16mb causing fassert
- SERVER-32935
improve exception handling in SyncTail::oplogApplication()
- SERVER-34549
Tests refer to ReplSetTest.kDefaultTimeoutMS, which is undefined
- SERVER-34661
Return early when the vote request response has an error
- SERVER-34758
replSetGetStatus can deadlock with initialSyncer
- SERVER-35437
Wait for secondary state after stepdown command in multi_rs.js
Query
SERVER-35693 Parsing of $in takes quadratic time due to O(n^2) boost::flat_set constructor
Storage
SERVER-34863 Disable LSM testing on 3.2, 3.4 and 3.6 branches
Operations
- SERVER-27230
Poor compression of diagnostic data when replica set is unhealthy
- SERVER-33546
Add numeric syncing field to replSetGetStatus members array
- SERVER-34159
Fix migration_destination_manager logging
Build and Packaging
- SERVER-32999
Platform Support: remove Debian 7
- SERVER-33395
PPC64 little endian altivec optimizations are broken on newer gcc
- SERVER-35210
curator release versions should be populated from the project expansions
Internals
- SERVER-26884
Support archiving data files in Evergreen on test failure
- SERVER-27410
Make the lint task required by compile on Enterprise RHEL 6.2
- SERVER-29301
Upgrade MozJS to ESR 45.9.0
- SERVER-29359
Enable SO_KEEPALIVE on egress server connections
- SERVER-30290
Use unique paths in ftdc_setdirectory.js
- SERVER-30557
Make max_time_ms.js more robust
- SERVER-31400
Record Linux netstat metrics in ftdc
- SERVER-31562
dump replica set oplogs at the end of every failed test
- SERVER-32688
FSM replication suites should give secondaries zero votes
- 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-32898
Create unit test for resmoke module archival.py
- 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-33512
Add PeriodicKillSecondaries hook to archive list
- 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-34540
Remove sleeptest from dbtests
- SERVER-34624
Remove C++ 14 builder from 3.4
- SERVER-34742
Stop running ssl_cert_password.js on OS X
- SERVER-34823
Thread name and connection number are not synchronized in TransportLayerLegacy
- SERVER-34835
Fix shard_does_not_hang_on_bad_config_server.js to accept either HostUnreachable or ExceededTimeLimit
- 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-34950
Use new sys-perf baseline 3.4.14-Baseline
- SERVER-35051
Resmoke should stop the balancer before shutting down sharded clusters
- SERVER-35071
Split MMAPv1 tasks into separate variants in sys-perf
- SERVER-35108
Enable signal processing in system_perf.yml
- SERVER-35155
Fix jstests/ssl/x509_invalid.js using explicit X509 client names
- SERVER-35207
Don't use json.get_history in system_perf.yml
- SERVER-35264
compile fails on sys-perf-3.4 // SERVER-34380
- SERVER-35610
Refine LDAP options parsing
- WT-3557
Make test/format ignore unknown keywords
- WT-3710
Fix a race condition between concurrent page splits
- WT-3994
Enhance WiredTiger Jenkins pull request tester for old branches
- WT-4032
parent pages can be evicted while being split.
- WT-4037
WT_REF structures freed while still in use
- WT-4045
Don't retry fsync calls after EIO failure
3.4.15 Changelog
Security
- SERVER-31893
Explicitly define timeout for synchronous LDAP calls
- SERVER-34193
Limit recursive definition ASN.1 types with OpenSSL update
- SERVER-34477
Coverity analysis defect 103475: Invalid iterator comparison
Sharding
- SERVER-16802
Order of balancer chunk moves depends on order of config.collections
- SERVER-22553
mongos_shard_failure_tolerance.js should not rely on order of shard ids
- SERVER-27941
Remove the shardVersion check when entering the critical section.
- SERVER-28670
Add sharding metadata refresh metrics section to serverStatus
- SERVER-28981
Sharding balancer prefers shards in a specific order when moving chunks
- SERVER-32885
Overlap chunk clone application on the donor with fetching documents from the recipient
- SERVER-34508
Prevent race condition in Migration Destination Manager from swallowing an exception
- SERVER-34571
Invariant fails in destructor of MigrationChunkClonerSourceLegacy on shutdown
Replication
- SERVER-29949
InitialSyncerResetsOptimesOnNewAttempt unit test should set optime before starting initial syncer
- SERVER-33026
SyncSourceFeedback request doesn't have a timeout
Storage
- SERVER-23935
Disable oplog sampling in queryable backup mode
- SERVER-32453
WTKVEngine::getAllIdents mishandles cursor->next return code.
- SERVER-33854
Fix applyOps field handling
WiredTiger
- SERVER-20056
Log a startup warning if wiredTigerCacheSizeGB is > 80% of RAM
Operations
- SERVER-12644
Move note about noprealloc hurting performance to startup warnings
- SERVER-28369
Give mongoldap a 'debug' mode
Build and Packaging
- SERVER-21317
Better fallback for builds with no version.json and no git repo
- SERVER-25691
Break out unit test compilation and run in its own task
- SERVER-27483
Avoid stripping debug symbols from C++ unit tests in Evergreen
- SERVER-31535
Platform Support: remove Ubuntu 12.04 builds
- SERVER-31809
Start using toolchain python on macOS
- SERVER-32923
Platform Support: remove SLES11 builds
- SERVER-34149
Upgrade zlib to latest
- SERVER-34250
Update Tools builders in Evergreen to match upstream
Tools
- TOOLS-17
mongodump --oplog should record the end oplog entry before backing up the oplog
- TOOLS-1706
mongoreplay cannot safely terminate on one core
- TOOLS-1779
stop building tools on solaris on all branches
- 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
Internals
- SERVER-21630
Expand resmoke's CheckReplDBHash support to config servers and sharded replica sets
- SERVER-24480
The Validate hook should run after CheckReplDBHash
- SERVER-24759
Run resmoke.py collection validation on the config servers
- SERVER-25771
valgrind fails with boost::math::erfc_inv<long double>(long double, long double): Overflow Error
- SERVER-27351
Deleted files cause lint failure on evergreen
- SERVER-27529
scons msi target is failing do to missing dependencies
- SERVER-27643
Stack locator can return invalid stack size when stack size ulimit is unlimited
- SERVER-28989
Avoid dropping dummy database in ReplSetTest.prototype.checkReplicaSet()
- SERVER-30857
when i try to launch ./mongo instance its crash right away even it show on other hand connection accepted from 127.0.0.1:54008 #1 (1 connection now open)
- SERVER-30900
remove collMod writeConcern argument from ReplSetTest.checkReplicaSet()
- SERVER-31128
run_validate_collections hook doesn't check secondaries
- SERVER-31441
Make run_validate_collections.js validate all nodes in replica set in parallel
- SERVER-31468
replSets/startParallelShell.js should wait for its parallel shells to exit
- SERVER-33068
run_check_repl_dbhash.js hook exits without actually running dbhash on a replica set
- SERVER-33329
Server and Shell do not emit TLS "protocol_version" alert messages
- SERVER-33398
Add the new finer grained sys-perf tasks
- SERVER-33484
Code coverage can't distinguish between files with identical names
- SERVER-33670
Build mongo binaries with -ssl compile flag in system_perf.yml
- SERVER-33734
Improve jsTestLog filterability
- SERVER-33805
Change Jepsen tasks running in Evergreen to use mongobridge
- 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-34116
resmoke.py is silently not running non-passthrough tests on the 3.4 branch
- SERVER-34140
remove multiple distro specification for single tasks in evergreen configs
- SERVER-34213
testshard1.js should use _ids of [0, nItems -1] instead of [1, nItems]
- SERVER-34237
Expose means for shell to disable TLS 1.0
- SERVER-34605
Change Jepsen tasks to run on the ubuntu1604-build distro in Evergreen
- SERVER-34667
data_consistency_checks.js incorrectly assumes that the config.mongos collection always exists
- TOOLS-1665
Mongotools may block forever on dead connections
- TOOLS-1704
Update mongo-tools projects to use macos-1012 distro instead of osx-1010
- TOOLS-1941
Tools qa-tests often timeout, particularly on server latests
- TOOLS-1978
tools fail eslint testing
- TOOLS-2003
Drop SUSE11 from Evergreen builds
- TOOLS-2008
Tests fail on v3.4-master branch
- WT-3972
Allow more than 64K cursors to be open on a data source simultaneously
- WT-3975
arg format mismatch after rwlock changes
- WT-3994
Enhance WiredTiger Jenkins pull request tester for old branches
- WT-4032
parent pages can be evicted while being split.
3.4.14 Changelog
Security
SERVER-32933 Allow mongod to start when unable to reach LDAP server
Sharding
- SERVER-29812
RangeDeleter unnecessarily waits for 'majority' write concern
- SERVER-31979
Chunk migration statistics are not recorded in the
moveChunk.commit
changelog entries - SERVER-32886
Unnecessary sleeps during chunk migration
- SERVER-33228
Remove the half-implemented and unused
CollectionRangeDeleter
from the 3.4 codebase
Replication
- SERVER-28151
Authentication database should be synced first during an initial sync
- SERVER-31399
repl.apply.batches.totalMillis does not record the time spent applying batches
- SERVER-31671
Cancel running elections if the term changes after writing my last vote
- SERVER-33448
Relax time diff requirements in apply_batches_totalMillis.js
Query
- SERVER-31161
Index created through applyOps command should not inherit collection default collation
- SERVER-33092
elemMatchProjection.js incorrectly assumes that shell generates monotonically increasing _id values
Storage
- SERVER-28594
non-atomic applyOps should log each individual op
- SERVER-32533
In oplog truncate with WT, don't use a start key
- 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
Operations
- SERVER-30114
Monitor cumulative time spent in tcmalloc spin lock
- SERVER-33227
Using the method
connect
in a script will as a side effect update globaldb
.
Build and Packaging
SERVER-33406 Reduce concurrency for s390x compile and compile_all builds to avoid OOM failures
Internals
- SERVER-23420
Remove use of GNU extensions in parse_number_test.cpp
- SERVER-28495
FTDC for MongoS
- SERVER-29938
Refactor FTDC
- SERVER-30158
FTDC starts too early in mongos
- SERVER-30850
startParallelShell cannot be used in a shell started with a replica set connection string
- SERVER-31222
JSFiles source member should not be a reference
- SERVER-32241
applyOps reports success even when a nested applyOps fails.
- SERVER-32522
set_read_and_write_concerns.js treats mapReduce "out" field like aggregation's $out stage
- SERVER-32583
Sys-perf update bootstrap variables to use proper ConfigDict Names
- SERVER-32691
Create passthrough for w="majority" with 2-node replica set to address lost test coverage
- 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-33236
Update perf.yml to use ssh form of git clone
- SERVER-33572
Provide a bounded, interruptible, thread safe, producer consumer queue
- SERVER-33751
Auth when connecting to an existing cluster in ReplSetTest
- SERVER-33760
Backport WithLock to 3.4
- WT-3245
Avoid hangs on shutdown when a utility thread encounters an error
- WT-3904
Reconsider error path in log server thread
- WT-3938
Reduce memory usage with many tables and sessions
- WT-3946
Truncate segfault with a NULL start cursor
- WT-3962
WiredTiger turtle file "MoveFileExW: Access is denied." error.
3.4.13 Changelog
Operations
SERVER-33238 Prevent WiredTiger read ticket count from going negative
Internals
SERVER-32664 Sys-perf enable running baselines at lower priority
3.4.12 Changelog
Sharding
SERVER-32924 tag skip_sharding_configuration_checks test with requires_persistence tag
Query
SERVER-33089 Unable to start queryable mongod because it failed to regenerate index for admin.system.users
Storage
SERVER-31462 convertToCapped + renameCollection may cause a segfault
Operations
- SERVER-31437
Fix parsing of
mongo host/db
connect string - SERVER-32875
Don't stall ftdc due to running out of tickets
Build and Packaging
SERVER-32932 When testing SLES 12 packages make sure required repos exist
Internals
- SERVER-28396
resmoke.py's logkeeper client should respect size limit for POST requests by splitting them up
- SERVER-32243
Add an option to have the validate hook skip some collections.
- SERVER-32527
Update package tests to use new BUILD2 VPC
- SERVER-32740
Set bootstrap.ycsb_dir and bootstrap.workloads_dir in system_perf.yml
- SERVER-32772
dbtest task in Evergreen should write to task directory
- SERVER-32891
Sys-perf change order of mongodb_setup and workload_setup calls
- SERVER-32896
Upload dsi-artifacts.yml in system_perf.yml
- SERVER-32931
System failure of burn_in_tests on v3.4 when no tests have been changed
3.4.11 Changelog
Security
- SERVER-28662
Do not pass NULL baseDN to ldap_search
- SERVER-31625
The contents of {USER} needs to be escaped when querying for the groups using LDAP server
- SERVER-32086
Suppress LDAP user cache invalidation log message by default
Sharding
- SERVER-19919
Chunks that exceed 250000 docs but are under half chunk size get marked as jumbo
- SERVER-29293
Recipient shard fails to abort migration on stepdown
- SERVER-29397
Invariant failure on config server when inserting tag into config.tags
- SERVER-29423
Sharding balancer may schedule multiple migrations with the same source or destination
- SERVER-31982
Shard does not call config commit chunk migration command with majority writeConcern nor checks for writeConcern errors.
- SERVER-32569
Introduce uniform way to allow config servers and shard replica sets to start in non-cluster mode
Replication
- SERVER-19605
Oplog timeout should be configurable
- SERVER-27067
Some Commands do not wait for write concern for no-op writes
- SERVER-28486
backup_restore.js should wait for FSM and CRUD operations to complete on all secondaries before getting current primary
- SERVER-29090
Nodes should provide more information on why they reject a vote
- SERVER-29649
Add startupWarning when a replset node is running with --nojournal but hasn't set writeConcernMajorityJournalDefault to false
- SERVER-29937
Make sure liveness timeouts cannot be missed
- SERVER-30143
Raise oplog size in clean_shutdown_oplog_state.js
- SERVER-30648
Set GlobalLockAcquisitionTracker after we waitForLock
- SERVER-30715
Print replica set config on logRotate
- SERVER-31262
Storage of _rbidCommandHandle can race with destruction of SyncSourceResolver
- SERVER-31587
ReplBatcher has a long-running OperationContext
- SERVER-31589
A primary's SyncSourceFeedback only renews an OperationContext on role changes.
- SERVER-32030
SyncTail::oplogApplication uses a long-running OperationContext (3.2/3.4)
Query
- SERVER-21011
Certain queries against compound 2d/text indexes are incorrectly covered, return incorrect results
- SERVER-29270
oplog query for first entry should not use a blocking sort
- SERVER-32046
Arrays of certain NumberDecimals can trigger an invariant failure
Write Operations
- SERVER-31531
feature compatibility version writes must check for writeErrors
- SERVER-32048
Updates using a numeric path component may cause index entries not to be created
Aggregation
- SERVER-30009
MapReduce failure: missing ) in parenthetical
- SERVER-30449
ProjectionSpecValidator is O(N**2) in number of fields in the projection
- SERVER-31624
Upgraded 3.2 to 3.4, $geoNear aggregate fails with featureCompatibilityVersion 3.4 collation error
Storage
- SERVER-30406
renaming system.views does not correctly invalidate the view catalog
- SERVER-31101
WT table not dropped after collection is dropped due to long-running OperationContext
- SERVER-31149
Enable recovery progress messages
- SERVER-31215
Enable pthread cond monotonic on Linux for WiredTiger
- SERVER-31469
WiredTiger queryable restore engine does not export init function symbol on windows
- SERVER-31590
WT yieldAndAwaitOplogDeletionRequest holds onto an OperationContext while blocking for an infrequent trigger
- SERVER-31930
EphemeralForTest does not unindex records in capped collections on rollback.
- SERVER-32001
unindexing a key in a partial unique index may cause server crash
- SERVER-32242
Fix race in CompatibleFirstStress lock manager test
Operations
- SERVER-28072
Running a script using 'mongo' on replication set fails
- SERVER-29921
Mongo connection uri doesn't support @ character in database name
- SERVER-30702
Stop printing stack traces in masserts
- SERVER-31046
Remove sensitive information from logging of parsed options during mongod startup
Build and Packaging
- SERVER-30853
Update Mongod init scripts to set unlimited locked memory
- SERVER-31016
return type 'std::__1::cv_status' must match previous return type 'std::__1::cv_status::__lx' when lambda expression has unspecified explicit return type
- SERVER-32271
Bump minimum MacOS version to 10.8 on stable branches
- SERVER-32286
Remove Type=forking from Debian SystemD service file
Internals
- SERVER-27801
external_auth tests should define KRB5CCNAME per test
- SERVER-29259
Authentication/Authorization indexes not created on initial document insertion
- SERVER-29623
Fix system_authorization_indexes.js on inMemory storage engine
- SERVER-30482
Mongos should not close sessions to below the configured ShardingTaskExecutorPoolMinSize
- SERVER-30565
burn_in_tests.py shouldn't cause compile task to fail
- SERVER-30634
Git detects all files as having changed on Windows causing burn_in_tests task to time out in Evergreen
- SERVER-30649
Check whether each expression inside of $elemMatch is compatible with a given index
- SERVER-30720
Integer overflow in SharedBuffer::grow_reallocate
- SERVER-30770
system_perf.yml: Use new DSI interface and cleanup
- SERVER-31119
Compilation fails with boost 1.62
- SERVER-31225
The mongod process forks before listening for connections
- SERVER-31379
Make ldap_authz_authn.js expect recently added LDAP groups
- SERVER-31380
Add metrics related to tcmalloc acquiring and decommitting memory from system
- SERVER-31440
Connpool HostTimeout races with callback lock acquire/release
- SERVER-31505
Simplify Snappy compressor
- SERVER-31516
NamespaceString's no-arguments constructor results in an improperly initialized object, can later cause segfault
- SERVER-31621
Sync buildscripts/scons.py across branches
- SERVER-31670
Change replica set fixture used by replica_sets_jscore_passthrough to make its secondary have zero votes
- SERVER-31717
Force C locale on Ubuntu 16.04 builders
- SERVER-31818
Add server parameter to disable MarkThread{temporary}Idle
- SERVER-31827
Make
multi_rs.js
wait for secondary status after stepdown inupgradePrimary
- SERVER-31957
Remove the timeseries support from etc/system_perf.yml
- SERVER-31997
Add additional unittesting for CompatibleFirst policy
- SERVER-32044
Use parameterized branch_name in performance projects
- SERVER-32061
Update ldap_authz_authn.js to reflect LDAP test server changes
- SERVER-32087
Run test stage of sys-perf and mongo-perf failures should lead to red evergreen boxes
- SERVER-32260
Call workload_setup.py from mongo repo
- SERVER-32410
Validate User::CredentialData before attempting to perform authentication
- SERVER-32704
sys-perf: Skip validating oplog as enabled by SERVER-32243
- SERVER-32788
Update "secondary performance" sysperf test to use nonvoting secondaries
- WT-3079
Make sure eviction visits all trees
- WT-3248
Performance degradation in workload with large overflow items
- WT-3296
LAS table fixes/improvements
- WT-3303
Deadlock during first access to lookaside table
- WT-3370
Heap use after free in txn recover code
- WT-3379
Avoid a performance regression on secondaries
- WT-3618
WT remove solaris from evergreen builds
- WT-3643
Recovery does not run after database opened with recover=error
- WT-3681
Don't truncate the last log file in recovery
- WT-3776
Cursor remove operation unpins page too early
3.4.10 Changelog
Security
- SERVER-25855
Increase more timeouts in mongos_cache_invalidation.js
- SERVER-28727
mongoldap should not print each acquired role's database inline
Sharding
- SERVER-29932
add asserts to mapReduce_inSharded_outSharded.js
- SERVER-30825
blacklist shard_existing_coll_chunk_count.js from the continuous config stepdown suite
- SERVER-31049
View with collation doesn't work as expected in sharded cluster
- SERVER-31091
The config server balancer stop command does not obey maxTimeMS
- SERVER-31111
Add
assert.commandWorked
to migrateBig_balancer.js - SERVER-31204
Calling
shardCollection
afterenableSharding
may fail if executed against different mongos
Replication
- SERVER-29772
Provide option to 3.2 and 3.4 to allow initial sync to complete even when it encounters renameCollection entries
- SERVER-30830
applyOps should return NamespaceNotFound when applying a CRUD operation on a non-existent collection/database
- SERVER-30840
extend timeout in replsets/index_delete.js (3.4 only)
- SERVER-30842
Don't try to set last optime for client backwards after rollback
- SERVER-31467
Blacklist initial_sync_rename_collection_unsafe.js from 3.2 initial sync variant
Query
- SERVER-31139
mongod fatal error after issuing $text index find containing nested non-text fields as the index prefix
- SERVER-31366
profile_getmore.js does not tolerate killCursors command
JavaScript
- SERVER-29651
Interrupt signal is ignored when received inside certain functions.
- SERVER-30362
JavaScript DBCollection.toString() stops working
- SERVER-30502
--disableJavaScriptJIT does not disable JIT
Storage
- SERVER-15723
Avoid G_X lock for rename_collection within database
- SERVER-28637
wiredtiger journal files accumulate with each server start/stop
- SERVER-30927
Use readConcern afterClusterTime for initsync oplog queries
- SERVER-31403
Disable mongo-rocks variant on v3.2 and v3.4
Operations
- SERVER-19076
printShardingStatus/sh.status should pass a decent indent to tojson() for shard keys
- SERVER-28821
MozJS ASAN integration should not invariant that all memory was freed
- SERVER-30361
mongod.conf bindIp option accept bogus parameters
- SERVER-30769
Mongo shell throws 'exception during autocomplete'
- SERVER-31176
mongo shell should use stderr for password prompt
Build and Packaging
- SERVER-23516
Using apt-get update chowns user to mongodb
- SERVER-30166
Use of string instead of std::string in some source files prevents compilation
- SERVER-30558
Remove Solaris builds from master
- SERVER-31197
building.md GCC version requirement out-of-date
- SERVER-31338
RHEL compile task failing in drivers nightly 3.4 branch
Internals
- SERVER-21933
Update README
- SERVER-29087
system-perf.yml needs to be changed to use the new name for the timeseries html file
- SERVER-29287
Upgrade pcre to 8.41
- SERVER-29524
sys-perf: Call infrastructure_provisioning.py instead of infrastructure_provisioning.sh
- SERVER-29565
Remove sys-perf compare tasks
- SERVER-30045
Debug symbols for unittest binaries are not uploaded on non-GDB platforms
- SERVER-30117
FeatureCompatibilityVersion::onInsertOrUpdate should only write to the server parameter on commit
- SERVER-30241
Attach workloads html to evergreen task
- SERVER-30891
perf.yml: make the -repl variants run frequently
- SERVER-30938
Enable ycsb-wmajority tests in system_perf.yml
- SERVER-31006
Use the latest release of curator on all branches
- SERVER-31108
Update baseline tag for microbenchmarks
- SERVER-31271
don't use nspr allocator for js threads for better ASAN
- SERVER-31273
Use Source/Sink version of snappy functions
- SERVER-31427
Disable stepback for Enterprise SLES 11/12 and Ubuntu1604 s390x
- SERVER-31527
Rebaseline sys-perf after adjusting tests (3.4.9 and 3.2.17)
- WT-3263
Allow archive on restart/recovery if clean shutdown
- WT-3264
Permanent change to disable logging should eventually remove all logs
- WT-3284
tree-walk restart bug
- WT-3308
Add statistics tracking around yield loops
- WT-3351
Recovery assertion failure: old_lognum < lognum
- WT-3406
Reconciliation is choosing reserved records for writing.
- WT-3461
Avoid long sleeps when the system clock is adjusted
- WT-3470
Avoid a metadata cursor open for table open/drop
- WT-3533
eviction handle walk can race with handle re-open
- WT-3590
Keep data consistent if writes fail during a clean shutdown
3.4.9 Changelog
Sharding
- SERVER-20392
Sharding an existing small collection results in large number of chunks
- SERVER-30183
a moveChunk that joins the active moveChunk on a shard may not respect its waitForDelete
- SERVER-30487
RangeDeleter holds WT transaction open while waiting for majority
- SERVER-30636
RangeDeleter assert failed because of replication lag
Replication
- SERVER-28277
Need to increase timeout in read_committed_with_catalog_changes.js
- SERVER-29802
Non-atomic applyOps command should not take out a global exclusive lock
- SERVER-30554
relax locking mode in applyOps when applying CRUD-only ops non-atomically
Query
SERVER-30189 Reduce calls to allocator for large $in expressions
Write Operations
SERVER-27317 Inserting a document with a Decimal128 value when featureCompatibilityVersion is 3.2 results in a closed socket
JavaScript
- SERVER-30875
Add support for a "no-owned bson" mode for JS Scopes
- SERVER-30971
Use of "scope" field in mapReduce triggers BSONObj ownership error
Storage
- SERVER-26239
Improve handling of WT_CACHE_FULL for inMemory storage engine
- SERVER-30490
Compile RocksDB with USE_RTTI=1
- SERVER-30790
ServerStatus on WiredTiger accesses the storage engine without any locks
Build and Packaging
- SERVER-29686
Remove /var/lib/mongodb from mongodb-org[-unstable] deb metapackage
- SERVER-30562
avoid running many duplicate ARM64 tests for the community build
Internals
- SERVER-26377
Skip running FSM workloads that use the compact command on the LSM build variant
- SERVER-26824
Skip FSM workloads which rely on nUpserted or nRemoved when Balancer is enabled
- SERVER-28824
Unhandled hang analyzer exception escapes loop to get threads from each process
- SERVER-29431
initialsync.js does not verify that initial sync succeeds
- SERVER-29714
Add Exception Message to Validate_Locale.cpp
- SERVER-30509
Update Evergreen API URL in burn_in_tests.py
- SERVER-30643
Performance regression with SSL
- WT-3329
With a uniform workload and a number of small collections, eviction does a poor job of selecting candidates for eviction.
- WT-3438
Don't tune eviction thread count when the count is fixed
- WT-3499
Checkpoint can miss not yet committed item
3.4.7 Changelog
Sharding
- SERVER-29817
Optimize incremental update performance of ChunkManager and CollectionMetadata
- SERVER-30058
Balancer policy should not move chunks off shards on 'size exceeded' conditions
- SERVER-30060
Optimize the sharding balancer's cluster statistics gathering
Replication
- SERVER-27581
shouldRetry() logic in multiInitialSyncApply_noAbort() is over-aggressive
- SERVER-28192
priority_takeover_one_node_higher_priority jstest needs longer stepDownGuard
- SERVER-28677
InitialSyncer::_setup_inlock() should reset last applied and durable optimes.
- SERVER-29015
TopologyCoordinator should not transition to candidate role in a single node replica set if we are in maintenance mode
- SERVER-29240
Add test to ensure valid index creation for capped collections that roll over during initial sync
- SERVER-29282
BSON Document Size can be exceeded when grouping inserts on SECONDARY nodes
- SERVER-29297
stepUp should wait for durability in awaitReplication
- SERVER-29383
When catchUpTimeoutMillis is 0, we should skip doing catchup entirely
- SERVER-29540
awaitNodesAgreeOnPrimary should log why it retries
- SERVER-30049
applyOperation_inlock() allows exceptions from Collection::insertDocument() to percolate to caller
- SERVER-30054
update tags.js to make nodes at indexes 3 and 4 unelectable
- SERVER-30138
make node 1 unelectable in initial_sync_invalid_views.js (3.4)
- SERVER-30139
Increase waitForState timeout in replsetprio1.js
- SERVER-30411
(3.4) last_vote.js should make assertCurrentTerm exception safe
Query
SERVER-29299 remove evalc.js and add currentOp to basicPlus.js's background operations.
Storage
- SERVER-27831
Deadlock when listing collections on "local" database with replication enabled for KVCatalog-based storage engines without document locking
- SERVER-28737
Have ephemeralForTest use std::mutex for protecting its internal data structures
Build and Packaging
- SERVER-28171
Use Python 2.7 for all python invocations in evergreen.yml
- SERVER-30199
'SConfBase' object has no attribute 'CheckBoostMinVersion'
Tools
- TOOLS-1109
fails to build on arm64 (syscall.Dup2 not supported)
- TOOLS-1741
mongoimport --uri throws errors when passed Atlas Connection String URI
Internals
- SERVER-26452
renameCollection
should handle write conflicts - SERVER-28046
Increase timeouts in replsets/read_committed_on_secondary.js to 10 minutes
- SERVER-28596
Upload hanging or failing tests in compile_all to S3
- SERVER-28991
Eliminate having individual threads in resmoke.py for flushing log output to logkeeper
- SERVER-29035
Update system-perf.yml baseline references
- SERVER-29327
Prevent DBDirectClient queries from storing MaxTimeMS on cursors
- SERVER-29568
Enable configuration of OpenSSL cipher suite via setParameter
- SERVER-29886
Hang analyzer shouldn't produce core dumps on ASan builders
- SERVER-29947
Implement Storage Node Watchdog
- SERVER-30132
Storage Node Watchdog needs to check journal directory
- SERVER-30169
Increase Watchdog Test timeouts
- SERVER-30415
Exclude new "evergreen" agent binary name from automatic process killing in Evergreen
- SERVER-30433
Increase Watchdog Test timeouts
- TOOLS-1542
dump and export shouldn't count views before running
- TOOLS-1563
windows tests are failing after
use mongodb 3.4 "current" tests
- TOOLS-1577
update the readme with information about mongoreplay
- TOOLS-1713
Move mongoreplay evergreen config .evergreen.yml into common.yml
- TOOLS-1743
legacy24 and legacy26 dumprestore tests failing on master
3.4.6 Changelog
Sharding
- SERVER-27789
Increase timeouts in commands_that_write_accept_wc_*
- SERVER-28351
blacklist move_stale_mongos.js and split_stale_mongos.js from the continuous stepdown suite
- SERVER-28418
make the split command on mongod return a stale version error if the requested chunk bounds are not found
- SERVER-29489
Balancer stats generation calls 'listDatabases' on shards without maxTimeMS or timeout
Replication
- SERVER-25765
Commands should wait for write concern even if they throw an exception
- SERVER-26848
Exit catchup mode when not syncing more data
- SERVER-28100
extend ReplSetTest.awaitNodesAgreeOnPrimary() to accept an optional expectedPrimaryIndex
- SERVER-28186
Increase slaveDelay in repl10.js test
- SERVER-28326
Wait for primary to stabilize in initial_sync4.js test after node is added to 1 node replica set
- SERVER-28378
Extend secondary catch up period in priority_takeover_two_nodes_equal_priority.js
- SERVER-28676
[v3.4] minor_version_tags_old_new_old.js should not use replSetStepUp command
- SERVER-28677
InitialSyncer::_setup_inlock() should reset last applied and durable optimes.
- SERVER-28751
Allow stepDown command to work against primary in catchup mode
- SERVER-28803
Increase timeout for clean_shutdown_oplog_state.js
- SERVER-28813
drop collection before doing dummy write in syncFrom helper
- SERVER-28877
Cancel race in replication executor can cause elections to assert.
- SERVER-28969
Wait until the voter has the latest optime in case 3 of catchup.js
- SERVER-29056
InitialSyncer::_startupComponent should reset 'component' before returning CallbackCanceled due to shutdown
- SERVER-29100
Wait for the same journaling requirement in get_last_error.js
- SERVER-29240
Add test to ensure valid index creation for capped collections that roll over during initial sync
- SERVER-29382
Fix cancel race related to the timeout in ReplicationCoordinatorImpl::CatchupState
- SERVER-29536
apply_batch_only_goes_forward.js should be configured to use 2 electable nodes instead of 3
Query
SERVER-29197 Dangling index records when initial syncing node clones a capped collection that deletes records during collection scan
Aggregation
- SERVER-28717
$lookup does not expand 'localField' as expected when it is a dotted path representing fields within an array
- SERVER-29001
Stack overflow in views_test (--dbg=on --opt=off) due to long aggregation pipeline
- SERVER-29618
$geoWithin in aggregation pipeline after $lookup and $unwind returns incorrect results
- SERVER-29647
Avoid moving $match to be before $sort + $limit
- SERVER-29676
arrayToObject should not error out on explicit value of null for value
Storage
- SERVER-22322
Better error message for "no database" from listIndexes
- SERVER-27347
Only close idle cached cursors on the WiredTiger ident that is busy
- SERVER-29011
Compact Calls to WiredTiger take multiple overlapping WT_SESSION objects
Operations
- SERVER-29075
Add remaining client metadata to the currentOp output
- SERVER-29509
shell_history.js should tolerate extended file ACLs
Build and Packaging
- SERVER-27260
systemd service files should not start mongod with --quiet
- SERVER-29409
Reduce Amazon Linux Enterprise build to weekly
- SERVER-29503
Migrate server build from 10.10 instances to new 10.12 instances
Internals
- SERVER-28052
Make SHA1Hash a full fledged class
- SERVER-28162
Tests that call getLatestProfilerEntry() should be blacklisted from dynamic initial sync passthrough suites
- SERVER-28323
Don't pass JavaScript scopes a function ID number
- SERVER-28864
Intra-cluster compression on by default
- SERVER-28960
Unittest "death tests" should not dump core
- SERVER-28997
Limit SCRAM-SHA-1 Cache's use of Secure Memory
- SERVER-29040
Remove deprecated "run" argument in rpm systemd service file
- SERVER-29148
Increase run time for mongos tests in sys-perf
- SERVER-29237
Add maxConnecting in asio connpool
- SERVER-29433
Improve logging during ReplicaSetFixture initialization
- SERVER-29485
Use vendorized YCSB in sys-perf.yml
- SERVER-29516
Tools build on OS X needs to set -mmacosx-version-min in CGO_{C,LD}FLAGS
- SERVER-29527
Use infrastructure_provisioning.sh and infrastructure_teardown.sh
- SERVER-29646
hang_analyzer.py should send a SIGUSR1 to resmoke.py before attaching to any processes
- SERVER-29680
Update perf.yml microbenchmarks replset config
- WT-3219
Make the clang-analyzer job fail when lint is introduced
- WT-3297
support the gcc/clang -fvisibility=hidden flag
- WT-3327
Checkpoints can hang if time runs backward
- WT-3331
Test format aborted due to time rollback
- WT-3362
Cursor opens should never block for the duration of a checkpoint
- WT-3369
WT_CURSOR->uri should always match the URI used to open the cursor
- WT-3373
Access violation due to a bug in internal page splitting
3.4.5 Changelog
Sharding
- SERVER-28513
stale_mongos_updates_and_removes.js should only call ensurePrimaryShard once
- SERVER-28850
Coverity analysis defect 100646: PW.PARAMETER_HIDDEN
- SERVER-28854
Replace msgBase with msg in assertion detail
- SERVER-28925
Use listDatabases({'nameOnly': true}) in the addShard implementation
- SERVER-29016
Config primary may hang in shutdown waiting for Balancer
- SERVER-29066
Sharded findAndModify will not implicitly create the database if it does not exist
Replication
- SERVER-26360
After node goes into RECOVERING due to being too stale to sync from its source, it will never recover even if there is a valid sync source it could use
- SERVER-26741
"Fatal Assertion 16360" triggered by temporary collections dropped when restarted in standalone mode
- SERVER-27966
last_vote.js should wait for replication before stepping down node 0 pre-reconfig
- SERVER-28387
Extend secondary catchup period during stepdown in server-23299-1.js
- SERVER-28480
last_vote.js should use ReplSetTest::stepUp() on node 1 before reconfig
- SERVER-28490
Check the state after acquiring the lock in bgsync
- SERVER-28688
Deadlock between shutdown and stepdown
- SERVER-28815
multi_rs.js - step down primary during upgrade/downgrade without {force:true}
Query
- SERVER-26765
Move views tests into jsCore
- SERVER-28952
Multikey indexes should not be eligible for DISTINCT_SCAN if distinct key is an array component
Storage
- SERVER-28038
Improve WiredTigerRecordStore invariants for capped visiblity
- SERVER-28357
MMAPv1 compact operation may trigger "quota exceeded" error (12501)
- SERVER-28427
GlobalLock with timeout can still block indefinitely
- SERVER-29088
Cache uuid in Collection class to fix perf regression
Operations
- SERVER-15407
Set thread name on Mac OS X and Linux
- SERVER-26634
Integrate GDB pretty printers for server vocabulary types
Build and Packaging
- SERVER-29352
Disable SNMP integration for OS X enterprise builds
- SERVER-26781
Add support for building with openssl 1.1.0
- SERVER-27682
Add SCons variable files for the MongoDB GCC and clang toolchains
Internals
- SERVER-19677
Intel library self-check in unit tests
- SERVER-21842
Generate report.json file and dump stacks on Windows when Event object created by resmoke.py is set
- SERVER-27279
pthread_setname_np is not supported on SUSE 11.4
- SERVER-27281
pkill/pgrep cannot find mongod on Linux
- SERVER-27285
Add a jsCore passthrough with a replset that periodically SIGKILLs a secondary
- SERVER-27408
burn_in_tests.py doesn't always exclude tagged tests when generating outfile
- SERVER-27570
Enforce stricter checks on top level command BSON objects
- SERVER-27727
Hide idle threads in hang_analyzer
- SERVER-27869
Create a build artifact of hang_analyzer.py output and upload it to S3
- SERVER-27870
Add option to invoke hang_analyzer.py with an explicit list of PIDs
- SERVER-27871
Add hang_analyzer.py option to produce core dump, default to off
- SERVER-27873
Dump a JavaScript backtrace of any code running in SpiderMonkey in hang_analyzer.py
- SERVER-27874
Display locks and generate digraph for threads using LockManager locks and/or pthread_mutexes
- SERVER-27877
hang_analyzer.py should deduplicate stacks from different threads in GDB
- SERVER-28007
Re-enable support for CRC32 hardware acceleration on s390x
- SERVER-28132
Remove sudo from hang_analyzer invocation in evergreen.yml
- SERVER-28291
mongodb-uniqstack should dedupe based on frame.pc() rather than frame.name()
- SERVER-28348
Detect single-process deadlocks involving LockManager locks and/or pthread_mutexes
- SERVER-28349
Process output logs generated by hang_analyzer are missing stderr
- SERVER-28354
Add new option to supply base process name in hang_analyzer
- SERVER-28400
Update to Firefox ESR 45.8.0
- SERVER-28415
Run thread backtrace before loading Python modules in hang_analyzer.py on ARM platform
- SERVER-28416
Handle GDB error in hang_analyzer.py mongodb-uniqstack module
- SERVER-28463
Add set scheduler-locking to Hang Analyzer to prevent threads from running in GDB
- SERVER-28466
The hang analyzer should not attach to resmoke.py in Evergreen
- SERVER-28479
hang_analyzer.py on OS X fails to find Python processes
- SERVER-28584
Remove initialsync_{WT|MMAPv1}_dr tasks from sys-perf
- SERVER-28588
Handle GDB error in hang_analyzer.py find_frame function
- SERVER-28710
vectorized send() should handle EWOULDBLOCK
- SERVER-28760
Add egress logging to legacy write path
- SERVER-28868
Set noCursorTimeout option on oplog cursor in ReplSetTest.prototype.checkOplogs()
- SERVER-28971
Error in depth_first_search algorithm incorrectly recurses on visited nodes
- SERVER-28995
Format string in JstackDumper class of hang_analyzer.py has too few placeholders
- SERVER-29018
3.4: mongos segfault in getMore on view with find batchSize of 0
- SERVER-29068
Retry operations in set_feature_compatibility_version.js after network interruption
3.4.4 Changelog
Security
- SERVER-27821
Make
large_role_chain.js
not run on DEBUG systems - SERVER-28014
When SSL mode is preferSSL, log connections that do not use SSL
Sharding
- SERVER-20854
Don't refresh database and collection information from config server while holding a mutex
- SERVER-22611
ChunkManager refresh can occasionally cause a full reload
- SERVER-27681
Better concurrency control on shard metadata refresh
- SERVER-27701
mongos crashed with "Invariant failure remote.status.isOK()"
- SERVER-28519
Bump verbosity for mongos and config servers in authCommands.js (v3.4)
- SERVER-28697
Ignore some NoProgressMade errors in sharding_balance4.js
- SERVER-28698
Use the 'chunkDataCommitted' failpoint for migration_critical_section_concurrency.js
- SERVER-28807
parseShardKeyPattern can leak for bad inputs
Replication
- SERVER-24498
Write tests for linearizable reads in a sharded system
- SERVER-26360
After node goes into RECOVERING due to being too stale to sync from its source, it will never recover even if there is a valid sync source it could use
- SERVER-26830
Randomize priority takeover timeout
- SERVER-27098
review and fix log levels in DataReplicator
- SERVER-27120
Increase synchronization between producer/applier threads and stepdown/stepup
- SERVER-27329
Move BackgroundSync::_rollback into rs_rollback.cpp and unit test it
- SERVER-27403
Consider term and rbid when validating the proposed sync source
- SERVER-27543
Create new metadata for oplog queries
- SERVER-27834
Index builds during initial sync should not implicitly create collections
- SERVER-27966
last_vote.js should wait for replication before stepping down node 0 pre-reconfig
- SERVER-27995
Make replication naming conventions consistent
- SERVER-28135
stepdown.js should always fsyncUnlock() all secondary nodes
- SERVER-28181
Deadlock involving the mutexes of oplog fetcher and replication coordinator
- SERVER-28184
remove election_timing.js (and lib/election_timing_test.js)
- SERVER-28185
remove reconfig_without_increased_queues.js
- SERVER-28272
extend timeout in step_down_during_draining.js when waiting for new primary
- SERVER-28275
fix misleading log message in ReplicationCoordinatorImpl::_startElectSelfIfEligibleV1()
- SERVER-28278
Wait for desired sync source to replicate dummy write before running replSetSyncFrom in syncFrom shell helper
- SERVER-28376
ReplSetTest.initiate() should call awaitReplication before requesting node 0 to step up as primary
- SERVER-28377
Do not check that remote last applied is ahead of local last fetched in OplogFetcher first batch during initial sync
- SERVER-28446
Blacklist top.js from dynamic initial sync suites
- SERVER-28695
step_down_during_draining.js should wait for writes to be durable before disable replication on secondaries using fail point
- SERVER-28699
ReplSetTest should always awaitSecondaryNodes() at the end of initiate
Query
- SERVER-27711
createIndexes command no longer supports maxTimeMS option
- SERVER-27761
view can be created on top of a view with different collation than underlying view
- SERVER-27972
Add a featureCompatibilityVersion op observer for database/collection drop
- SERVER-28121
DurableViewCatalog shouldn't throw on null byte in view ns
- SERVER-28498
Stop running the rlp* tasks on the "Enterprise RHEL 6.2 DEBUG Code Coverage" builder
- SERVER-28546
documents can erroneously be unindexed from a partial index
Write Operations
- SERVER-26703
Inserting deeply-nested documents should fail with error
- SERVER-28347
Prohibit updates that cause documents to exceed the depth limit
Aggregation
- SERVER-8433
Aggregating deeply-nested documents can cause stack overflow
- SERVER-18794
Add an aggregation expression to convert an object to an array of key, value pairs
- SERVER-23310
Add an expression to convert an array of pairs to an object
- SERVER-27644
distinct on a view doesn't "flatten" array members
- SERVER-28409
Decrease verbosity during testshard1.js
JavaScript
SERVER-22520 Educate ASAN leak checker about js allocations
Storage
- SERVER-22954
MigrationDestinationManager should not directly use MMAPv1 durable interface
- SERVER-28548
mmap b-tree removals may cause index readers or writers to return invalid data
- SERVER-28572
Update test case to use valid custom WiredTiger configuration values
- SERVER-28645
Fail commands that require too many locks instead of crashing
- SERVER-28646
Don't report ops as passed if logOps causes txn to fail
Operations
- SERVER-16821
Do not abort server when receiving multiple SIGUSR1 in the same second
- SERVER-28380
Add a test-only clearLog command for clearing out RamLog, use it in tests when checking for a specific log message
Build and Packaging
- SERVER-20540
Support compiling with split DWARF debug info
- SERVER-28390
Mark link targets as Precious when incremental linking flags are enabled
Internals
- SERVER-21539
Generate report.json file when resmoke.py receives a SIGUSR1
- SERVER-26952
Cache SCRAM-SHA-1 ClientKey
- SERVER-27191
hang analyzer should dump lock manager state
- SERVER-27684
Remove the self-imposed 2 minute limit from hang_analyzer.py
- SERVER-27687
ppc64le build incorrectly indicates pointer size of 32
- SERVER-27691
ServiceContext::setKillAllOperations should be replaced with an operation that interrupts running operations
- SERVER-27853
Fetch debug symbols before invoking hang_analyzer.py
- SERVER-27854
initiate replicasets faster in replicaset.py
- SERVER-27866
The globalLockManager dump should print thread ID in decimal & hex
- SERVER-27868
Upload debug symbols on all build variants that create separate symbol files
- SERVER-27875
Dump critical sections on Windows in hang_analyzer.py
- SERVER-27876
hang_analyzer.py should deduplicate stacks from different threads in Windows debugger CDB
- SERVER-28091
Disk stats collection on OS X only captures I/O utilization averaged over the uptime of the machine
- SERVER-28169
Set eviction=(threads_min=1) in Microbenchmarks testing
- SERVER-28259
Log time to establish egress connections through NetworkInterfaceASIO
- SERVER-28329
Remove comparison tasks from Microbenchmarks
- SERVER-28426
Update etc/longevity.yml to use run_test.py instead of run-${test}.sh
- SERVER-28430
Expose dropConnections() method on ConnectionPool through the NetworkInterface
- SERVER-28462
Update perf.yml to compare against latest stable release
- SERVER-28489
MockStream should handle cancellation while it is paused
- SERVER-28526
Update Evergreen API URL in burn_in_tests.py
- SERVER-28530
SSLThreadInfo invokes constructor in destructor
- SERVER-28547
sharding_continuous_config_stepdown suite doesn't actually step any nodes down
- SERVER-28586
"do jepsen setup" function should check out branch before trying to change to subdirectory
- SERVER-28652
Add logging to track egress connection pool size
- SERVER-28692
Move shell tarball generation to compile task
- SERVER-28748
Set virtual memory ulimit in package smoke testing for mongo shell tests
- SERVER-28823
burn_in_tests.py does not use api server default due to missing
None
check - WT-98
Update the current cursor value without a search
- WT-2439
Enhance reconciliation page layout
- WT-2990
checkpoint load live_open assertion failure
- WT-3136
bug fix: WiredTiger doesn't check sprintf calls for error return
- WT-3155
Remove WT_CONN_SERVER_RUN flag
- WT-3182
Switch make-check to run the short test suite by default
- WT-3190
Enhance eviction thread auto-tuning algorithm
- WT-3191
lint
- WT-3193
Close a race between verify opening a handle and eviction visiting it
- WT-3196
Race with LSM and eviction when switching chunks
- WT-3199
bug: eviction assertion failure
- WT-3202
wtperf report an error on in_memory=true mode : No such file or directory
- WT-3203
bulk-load state changes can race
- WT-3204
eviction changes cost LSM performance
- WT-3207
Drops with checkpoint_wait=false should not wait for checkpoints
- WT-3208
test format hung with 9mb cache
- WT-3211
WT_CURSOR.remove cannot always retain its position.
- WT-3212
'wt dump' crashes when given table with unknown collator
- WT-3213
generated test/format CONFIG invalid on next run
- WT-3216
add support for clang-tidy
- WT-3224
LSM assertion failure pindex->entries == 1
- WT-3225
WiredTiger won't build with clang on CentOS 7.3.1611
- WT-3227
Python test suite inserts unnecessary whitespace in error output.
- WT-3228
Remove with overwrite shouldn't return WT_NOTFOUND
- WT-3234
Update WiredTiger build for clang 4.0.
- WT-3238
Java: Cursor.compare and Cursor.equals throw Exceptions for valid return values
- WT-3240
Coverity reports
- WT-3243
Reorder log slot release so joins don't wait on IO
- WT-3244
metadata operations failing in in-memory configurations
- WT-3249
Unit test test_readonly fails as it is unable to open WiredTiger.lock
- WT-3250
Incorrect statistics incremented on Windows
- WT-3254
test_reconfig02 uses incorrect configuration string
- WT-3262
Schema operations shouldn't wait for cache
- WT-3265
Verify hits assertion in eviction when transiting handle to exclusive mode
- WT-3271
Eviction tuning stuck in a loop
3.4.3 Changelog
Sharding
- SERVER-27382
Remove usages of DBConfig::reload
- SERVER-27809
Move split logic outside of the Chunk class
- SERVER-27940
Deadlock ReplicaSetMonitorManager on shutdown
- SERVER-28030
Move 'initial chunks' writes out of ChunkManager
- SERVER-28098
Get rid of DBConfig::getAllShardIds
- SERVER-28106
Cleanup the contract of ChunkManager::findIntersectingChunk
- SERVER-28111
Move parallel.h/parallel.cpp to be under mongo/s/client
- SERVER-28155
Cleanup sharding library dependencies
Replication
- SERVER-20844
Start ReplSetTests faster wrt initial election
- SERVER-26914
improve log messages for freshness checking
- SERVER-26918
backup_restore.js - nodes should agree on primary before starting FSM clients
- SERVER-26930
backup_restore.js should await replication after fsm clients have stopped and hidden node has become secondary
- SERVER-27035
rs.compareOpTimes() throws exception when comparing with empty OpTime
- SERVER-27189
_getLastOpTime / _getDurableOpTime do not handle missing nodes gracefully
- SERVER-27405
fix race in read_after_optime.js
- SERVER-27488
Unblacklist bypass_doc_validation.js in static resync passthrough
- SERVER-27551
QuorumChecker should retry requests that fail
- SERVER-27783
Remove unnecessary lock in SyncSourceFeedback
- SERVER-27791
increase write concern timeout in gle/block2.js and gle/get_last_error.js from 30 seconds to 5 minutes
- SERVER-27794
Provide write concern to bulk insert in indexbg_drop.js
- SERVER-27799
apply setParameter for maxSyncSourceLagSecs to slave 2 only in maxSyncSourceLagSecs.js
- SERVER-27808
backup_restore.js should await replication and re-evaluate primary before adding new hidden secondary to replica set
- SERVER-27810
Guarantee that replicaset is stable with node 0 as primary after ReplSetTest.initiate()
- SERVER-27816
increase wtimeout in sync2.js
- SERVER-27837
exclude rename collection FSM workload in backup_restore.js
- SERVER-27839
Allow for step downs during reconfig in ReplSetTest initiate
- SERVER-27840
add wtimeout to write concerns in protocol_version_upgrade_downgrade.js
- SERVER-27844
increase timeout in repl/block2.js
- SERVER-27847
increase timeout in apply_batch_only_goes_forward.js
- SERVER-27861
Make the failover in drain.js more reliable
- SERVER-27889
Change catchup.js to be resilient to replSetStepUp failing because the node is already a candidate
- SERVER-27905
fix race in DataReplicatorTest::DataReplicatorReturnsCallbackCanceledIfShutdownImmediatelyAfterStartup
- SERVER-28005
Oplog query network timeout is less than the maxTimeMs
- SERVER-28013
Ensure ReplClientInfo's last opTime can't be moved backwards
- SERVER-28037
Raise default writeConcern wtimeout in db.js to 10 minutes
- SERVER-28041
remove awaitNodesAgreeOnPrimary() call in sync2.js
- SERVER-28047
ReplSetTest._callIsMaster() should set slaveOk on primary
- SERVER-28050
Reconnect connection after stepdown in read_committed_stale_history.js
- SERVER-28075
Wait for DB works in simulateSuccessfulV1ElectionAt()
- SERVER-28110
Set secondaryCatchUpPeriodSecs smaller when requesting remote primary stepdown
Query
SERVER-28017 $ne perform a case sensitive find when it should do a case insensitive find based on collation settings
Aggregation
- SERVER-27253
$lookup and $graphLookup do not increment index stats counters
- SERVER-27362
MapReduce can attempt to deregister a cursor without holding a collection lock
Storage
- SERVER-3181
Add option to listDatabases to only get db names, not size info
- SERVER-27807
creating a snapshot and registering it in the replcoord is not synchronous
- SERVER-27857
Rewrite the remove_during_mr.js test as an FSM workload
- SERVER-27936
fix improper release of locks in master/slave handleDuplicateDbName
- SERVER-28049
List Databases command should apply filter on name only before database locks
- SERVER-28249
Use TCMalloc MarkThreadTemporarilyIdle instead of MarkThreadIdle
WiredTiger
- SERVER-28026
Disable auto-tuning of WiredTiger eviction threads
MMAP
- SERVER-24963
Concurrent collection.drop() and system.indexes.count() can trigger an fassert
- SERVER-27930
Accessing cursor with pending data after renaming collection may trigger fassert
- SERVER-27996
Accessing system.namespaces cursor with pending data after removing namespaces may cause crash
- SERVER-28022
Accessing cursor with pending data after forcing system.namespaces record move may cause crash
TTL
SERVER-28154 Race condition in ttl_sharded.js
Operations
- SERVER-6065
db.shutdownServer() does not work as expected when mongod is a Windows Service
- SERVER-16796
Increase logging activity for journal recovery operations
- SERVER-27863
Reschedule early alarms in NetworkInterfaceASIO to avoid mongos crash
Build and Packaging
- SERVER-25309
Add RHEL 6 zSeries build variant
- SERVER-27623
SLES11 s390x build should target z9-109, not z196
- SERVER-27836
Package smoke testing should retry verify step and not call converge
- SERVER-27856
Stop running the concurrency suite on the ubuntu1604-arm64-large distro
Internals
- SERVER-21675
Remove 'legacy' from Evergreen task names
- SERVER-23959
option to allow disabling job object creation in smoke.py for win32
- SERVER-26522
CleanEveryN output should be written to logkeeper
- SERVER-26523
Replace raise errors.TestFailure with raise errors.ServerFailure in passthrough hooks where appropriate
- SERVER-26642
JS compiled code string length limit on Windows
- SERVER-27091
Add large dataset initialsync test into system performance test
- SERVER-27234
Evergreen task disk statistics improvement
- SERVER-27700
WT secondary performance drops to near-zero with cache full
- SERVER-27784
Remove httpget() from packager.py
- SERVER-27858
Increase the task timeout when running to the concurrency suite to 6 hours
- SERVER-27920
Fix incorrect locking of Client context
- SERVER-27935
Fix serialization of concurrent fsyncLock execution
- SERVER-27963
Disable CRC32 hardware support on s390x builders
- SERVER-27983
Move sys-perf state to /data from $HOME
- SERVER-28000
sys-perf: Organize all dsi yaml config files under configurations/
- SERVER-28067
Update sys-perf.yml to copy over cluster.json
- SERVER-28086
Update system-perf.yml tagged commit
- SERVER-28147
Increase time out on sys-perf shard tests
- SERVER-28239
Fix double ticket holder release in transport layer legacy during primary step down
- TOOLS-1605
Conditionally create a Windows job object in smoke.py
- WT-2771
Add a statistic to track per-btree dirty cache usage
- WT-2790
Fix a text case false positive in test_sweep01
- WT-2833
improvement: add projections to wt dump utility
- WT-2898
Improve performance of eviction-heavy workloads by dynamically controlling the number of eviction threads
- WT-2909
Create automatable test verifying checkpoint integrity after errors
- WT-2994
Create documentation describing page sizes and relationships
- WT-3080
Python test suite: add timestamp or elapsed time for tests
- WT-3082
Python test suite: shorten default run to avoid pull request timeouts.
- WT-3083
Fix a bug in wtperf config dump
- WT-3086
Add transaction state information to cache stuck diagnostic information
- WT-3088
bug: Don't evict a page with refs visible to readers after a split
- WT-3091
Add stats to test_perf0001
- WT-3092
Quiet a warning from autogen.sh
- WT-3093
Padding the WT_RWLOCK structure grew the WT_PAGE structure.
- WT-3097
Race on reconfigure or shutdown can lead to waiting for statistics log server
- WT-3099
lint: static function declarations, non-text characters in documentation
- WT-3100
test bug: format is weighted to delete, insert, then write operations.
- WT-3104
Fix wtperf configs for eviction tests
- WT-3105
Fix a deadlock caused by allocating eviction thread sessions dynamically
- WT-3106
Add truncate support to command line wt utility
- WT-3108
Also dump disk page size as part of metadata information
- WT-3109
wording fix in transaction doc
- WT-3110
Add more test cases for the WT command line utility
- WT-3111
util_create() doesnt free memory assigned to "uri"
- WT-3112
Handle list lock statistic not incremented in eviction server
- WT-3113
Add a verbose mode to dump the cache when eviction is stuck
- WT-3114
Avoid archiving log files immediately after recovery
- WT-3115
Change the dhandle lock to a read/write lock
- WT-3116
Python style testing in s_all may not execute correctly
- WT-3118
Protect random-abort test against unexpectedly slow child start
- WT-3120
Fix ordering problem in connection_close for filesystem loaded in an extension
- WT-3121
In test suite create standard way to load extensions
- WT-3126
bug: dist/s_all script has misplaced quote causing bad error reporting
- WT-3127
bug: CPU yield calls don't necessarily imply memory barriers
- WT-3128
wt printlog returns operation-not-supported if it doesn't find any log files
- WT-3130
Ensure extensions have access to database home directory
- WT-3134
Coverity scan reports 1368529 and 1368528
- WT-3135
search_near() for index with custom collator
- WT-3137
Hang in __log_slot_join/__log_slot_switch_internal
- WT-3139
Enhance wtperf to support periodic table scans
- WT-3143
Coverity scan report 1369053
- WT-3144
bug fix: random cursor returns not-found when descending to an empty page
- WT-3148
Improve eviction efficiency with many small trees
- WT-3149
Change eviction to start new walks from a random place in the tree
- WT-3150
Reduce impact of checkpoints on eviction server
- WT-3152
Convert table lock from a spinlock to a read write lock
- WT-3156
Assertion in log_write fires after write failure
- WT-3157
checkpoint/transaction integrity issue when writes fail.
- WT-3159
Incorrect key for index containing multiple variable sized entries
- WT-3161
checkpoint hang after write failure injection.
- WT-3164
Ensure all relevant btree fields are reset on checkpoint error
- WT-3170
Clear the eviction walk point while populating from a tree
- WT-3173
Add runtime detection for s390x CRC32 hardware support
- WT-3174
Coverity/lint cleanup
- WT-3175
New hang in internal page split
- WT-3179
test bug: clang sanitizer failure in fail_fs
- WT-3180
fault injection tests should only run as "long" tests and should not create core files
- WT-3184
Problem duplicating index cursor with custom collator
- WT-3186
Fix error path and panic detection in logging loops
- WT-3187
Hang on shutdown with a busy cache pool
- WT-3188
Fix error handling in logging where fatal errors could lead to a hang
- WT-3189
Fix a segfault in the eviction server random positioning
3.4.2 Changelog
Sharding
- SERVER-26562
Move CommitChunkMigration command implementation into a Catalog function and unit test it
- SERVER-26785
rewrite addshard2.js to be able to unblacklist it from the last_stable suite
- SERVER-26791
move/split/mergeChunk commands do a full metadata refresh on the shard
- SERVER-26903
ShardingTest is failing non-retriable writes when the primary steps down because the stepdown suite turns the electionTimeoutMillis down from 10,000 ms to 5,000 ms
- SERVER-27146
Enforce maxStalenessSeconds >= 90
- SERVER-27258
A v3.4 config server can crash with a core dump if it gets an unsupported shard key from mongo S.
- SERVER-27321
Rename ScopedChunkManager::getExisting to refreshAndGet
- SERVER-27364
Remove DBConfig::setPrimary
- SERVER-27366
Remove DBConfig::enableSharding
- SERVER-27381
Remove DBConfig::dropDatabase
- SERVER-27393
Balancer taking 100% CPU due to large number of dropped sharded collections
- SERVER-27419
Move cluster 'drop' command to a separate file
- SERVER-27428
MigrationChunkClonerSourceLegacy's unit-tests do not wait for the onCommand handler thread to complete
- SERVER-27460
RouterStageMerge::kill() can crash during mongos shutdown
- SERVER-27466
move transitionToPrimaryHangBeforeInitializingConfigDatabase to before taking the global exclusive lock
- SERVER-27473
Remove writes from DBConfig
- SERVER-27480
Get rid of ConfigServer class
- SERVER-27510
Compare only epochs instead of full chunk versions in CollectionMetadata::checkChunkIsValid()
- SERVER-27526
Get rid of all non-metadata usages of DBConfig::isShardingEnabled
- SERVER-27556
Cleanup sharding request processing code
- SERVER-27613
Remove unused 'chunkVersion' field sent in splitChunk command
- SERVER-27667
Get rid of the sharding Request class
- SERVER-27726
Split ShardingCatalogManagerImpl into multiple .cpp files by category of operation
- SERVER-27736
DBConfig should not store unsharded collections
Replication
- SERVER-23759
shutting down a node while replication is initializing can crash
- SERVER-25860
Flatten / optimize fixup_info
- SERVER-26528
Add additional logging when sync source is changed or cleared
- SERVER-26773
two_initsync.js should check that inserts succeed
- SERVER-26945
master-slave ReplSource::resyncDrop should not assume database name obtained from listDatabases result exists locally
- SERVER-26951
remove or improve replset9.js
- SERVER-27046
race between CollectionCloner::_findCallback and CollectionCloner::_insertDocuments
- SERVER-27050
Ensure upstream node doesn't roll back after checking minvald
- SERVER-27052
Add asynchronous operation support to DataReplicator
- SERVER-27056
Don't enforce data freshness for step-up command
- SERVER-27079
DataReplicator should wait for last oplog fetcher to finish before starting next initial sync attempt
- SERVER-27118
Default shutdown command's 'timeoutSecs' argument to 10 seconds
- SERVER-27123
Only update commit point via spanning tree
- SERVER-27125
Arbiters in pv1 should vote no in elections if they can see a healthy primary of equal or greater priority to the candidate
- SERVER-27154
replSetRequestVotes command should wait for durability
- SERVER-27155
replSetRequestVotes records dryRun votes as real
- SERVER-27157
replSetRequestVotes doesn't synchronize between processing and recording request
- SERVER-27216
Increase catchup timeout to 300 seconds in catchup.js
- SERVER-27231
add failpoint to turn off re-evaluating sync sources, for jstests that manipulate chaining
- SERVER-27282
Clean up and fix bugs in RS rollback error handling
- SERVER-27295
always set slaveOk to true on remote commands in the old initial sync
- SERVER-27301
converted OpObserver into an interface. ServiceContext should always return a valid OpObserver implementation.
- SERVER-27323
Use stopOplogFetcher failpoint instead of rsSyncApplyStop failpoint in write_concern_after_stepdown_and_stepup.js
- SERVER-27352
Fix stepdown command in double_rollback.js
- SERVER-27365
reconfig_without_increased_queues.js should initiate node 2 of its replicaset with priority 0
- SERVER-27397
Disable OplogFetcher sync source re-evaluation during initial sync
- SERVER-27409
zbigMapReduce.js should use a write concern for inserts so it does not roll over its oplog
- SERVER-27446
operation_latency_histogram.js fails in initial sync passthrough due to reads performed by the repl system
- SERVER-27461
Retry connecting to shut down primary until failure in shutdown_primary.js
- SERVER-27468
Do not run dynamic initial sync passthroughs on 3dot2 initial sync variant
- SERVER-27523
geo_s2cursorlimitskip.js fails in initial sync passthrough due to reads performed by the repl system
- SERVER-27544
shutdown_primary.js shouldn't try to disable rsSyncStopApply failpoint on primary
- SERVER-27582
lastVote is not properly initialized
- SERVER-27583
SyncSourceFeedback should be shut down outside ReplicationCoordinatorExternalStateImpl lock
- SERVER-27611
DatabaseCloner::shutdown() does not shut down CollectionCloner
- SERVER-27624
SyncSourceFeedback should check for shutdown before setting _reporter
- SERVER-27656
Ensure node 0 is not primary during reconfig in last_vote.js
- SERVER-27657
last_vote.js should wait for reconfig to reach all nodes before continuing
- SERVER-27677
CollectionBulkLoader::_releaseResources() should ensure there is a Client available
- SERVER-27678
CollectionCloner should call _finishCallback at most once
- SERVER-27680
Make bgsync check stopOplogFetcher failpoint before scheduling new OplogFetcher
- SERVER-27712
Do not specify _id field in user_defined_roles_on_secondaries.js
- SERVER-27741
fix race in DataReplicatorTest::DataReplicatorResetsOnCompletionCallbackFunctionPointerUponCompletion
- SERVER-27775
fix race in collection_cloner_test CollectionClonerTest::CollectionClonerCannotBeRestartedAfterPreviousFailure
Query
- SERVER-24027
The planner does not consider reversing index scan direction in order to obtain a SORT_MERGE plan
- SERVER-26734
indexStats action is not sufficient privileges for $indexStats operator
- SERVER-27042
Fix and modernize currentop.js
- SERVER-27438
Legacy query via mongos drops $comment
- SERVER-27449
set_feature_compatibility_version.js should not give votes to replica set members expected to crash
- SERVER-27465
rewrite killop.js using setYieldAllLocksHang failpoint
- SERVER-27525
collation.js should use test-specific database
- SERVER-27584
Add support for filter to listDatabases
- SERVER-27649
Don't error on serialization of $elemMatch with $regex
Write Operations
SERVER-24563 Secondary crash when inserting document into db with different case
Aggregation
- SERVER-25535
Remove injectExpressionContext() methods from pipeline directory
- SERVER-27288
DocumentSourceSkip and DocumentSourceMatch getNext() should release GetNextResult reference prior to subsequent underlying source getNext() call
- SERVER-27304
Create setParameter to make all aggregations which require merging select the primary shard as the merger
- SERVER-27307
DocumentSourceCursor should store namespace as NamespaceString
- SERVER-27406
Reduce DocumentSourceCursor batch size from 16MB to 4MB
- SERVER-27420
Aggregation should explicitly parse apart BSON Arrays
- SERVER-27527
Remove explicit shardingEnabled check for databases in M/R and aggregation
Storage
- SERVER-25286
Remove drop2.js dependency on count scan yield behavior
- SERVER-27243
Upgrade to 3.4 'create collection' fails in Backup
- SERVER-27256
Run getMore test in sharded configuration in views_authz.js
- SERVER-27418
[trivial] Enable noPassthrough/index_version_v2.js test for MongoRocks
- SERVER-27512
queryable_mmapv1 can encounter larger blocks than the default page size
- SERVER-27591
Need to abandonSnapshot after unlocking in TTLMonitor
WiredTiger
- SERVER-26545
Remove fixed-size limitation on WiredTiger hazard pointers
Operations
- SERVER-26960
Consider improving error message when attempting $natural sort on a view
- SERVER-27289
Shell: mongo --host replSet/Host:Port no longer works
- SERVER-27576
MongoDB 3.4 'mongo' shell quit() not working
Build and Packaging
SERVER-27450 Add i386 architecture to repo config yaml for debian and ubuntu.
Tools
- TOOLS-1553
PreProcessing is failing with "got invalid document size"
- TOOLS-1569
mongo-replay crashes during playback
- TOOLS-1576
nil pointer derereference when error occurs
Internals
- SERVER-24695
burn_in_tests.py should have a mechanism for blacklisting tests and suites similar to resmoke.py
- SERVER-26308
Decrease number of jobs for sharding-related suites on Windows DEBUG and PPC variants
- SERVER-26525
Factor out identical jstest checkLog functions and increase timeout
- SERVER-26806
Randomly restart initial sync in the dynamic initial sync passthrough
- SERVER-26860
add more unittests for compatible-first locking policy
- SERVER-27126
Remove reference to mongodb-mongo-master Evergreen project in burn_in_tests.py script
- SERVER-27175
Address slowness in Explain::getPlanSummary
- SERVER-27208
Update microbenchmarks to use next mongo-perf release
- SERVER-27232
Refresh and Setup timeouts in the ASIO connpool can prematurely time out an operation
- SERVER-27306
Remove AutoGetCollection* methods that take std::string namespace
- SERVER-27339
ReplSetTest shouldn't inspect TestData directly
- SERVER-27343
Reduce Frequency of sys-perf runs
- SERVER-27350
Enable access control for microbenchmarks in Evergreen
- SERVER-27370
MongoDB 3.4.0 with --rest segfaults if the route /isMaster is called
- SERVER-27456
Microbenchmarks: Increase inMemorySizeGB and oplogSize
- SERVER-27459
dbtest should set featureCompatibilityVersion to the most recent value during global initialization
- SERVER-27568
mongo-perf: Release 2017-01
- SERVER-27605
Reduce concurrency for jsCore_small_oplog_rs_resync_static, jsCore_small_oplog_rs_initsync and jsCore_small_oplog_rs_initsync_static
- SERVER-27618
Make NetworkInterfaceASIO stress test less stressful
- SERVER-27653
Blacklist Concurrency suite in burn_in_tests
- SERVER-27754
Use requests instead of httplib2 in packager.py
- TOOLS-1541
support exporting views
- TOOLS-1549
--gssapiServiceName should not require --gssapiHostName in the tools
- TOOLS-1559
TestCommandOpGetMoreLiveDB is failing after upgrade to 3.4 in evergreen
- TOOLS-1579
Progress bar exceeding 100%
- WT-283
Add a way to change persistent object settings
- WT-2336
Add a test validating schema operations via file system call monitoring
- WT-2402
Misaligned structure accesses lead to undefined behavior
- WT-2670
Inefficient I/O when read full DB (poor readahead)
- WT-2960
Inserting multi-megabyte values can cause pathological lookaside usage
- WT-2969
Possible snapshot corruption during compaction
- WT-3014
Add GCC/clang support for ELF symbol visibility.
- WT-3021
Fixes needed for Java log cursor example, Java raw mode cursors, log cursors in raw mode
- WT-3025
fix error path in log_force_sync
- WT-3028
Workloads with all dirty pages could trigger diagnostic stuck check
- WT-3030
Test failure indicating invalid key order during traversal
- WT-3034
Add support for single-writer named snapshots.
- WT-3037
Fix some outdated comments in logging
- WT-3048
WiredTiger maximum size warning uses the wrong format.
- WT-3051
Remove external __wt_hex symbol.
- WT-3052
Improve search if an index hint is wrong
- WT-3053
Review Python and Java calls to internal WiredTiger functions
- WT-3054
Java PackTest, PackTest03 do not compile
- WT-3055
Java AsyncTest faults
- WT-3056
For cursors with projections, keys should be allowed
- WT-3057
WiredTiger hazard pointers should use the WT_REF, not the WT_PAGE.
- WT-3061
syscall test runs with checkpoint_sync=false and doesn't acknowledge pwrite64
- WT-3064
minor tree cleanups: .gitignore, NEWS misspelling
- WT-3066
lint
- WT-3068
Copy wtperf artifacts when running Jenkins tests
- WT-3069
Fix build failures in LevelDB APIs
- WT-3070
Fix search_near() for index cursor
- WT-3071
Java: fix build with -Werror=sign-conversion
- WT-3075
Document and enforce that WiredTiger now depends on Python 2.7
- WT-3078
Fix a hang in the reconfiguration test.
- WT-3084
Fix Coverity resource leak complaint.
3.4.1 Changelog
Security
SERVER-27194 Views should require both "viewOn" and "pipeline" to be specified if modifying view when auth is enabled
Sharding
- SERVER-22657
Add invariants and write unit-tests for the legacy migration chunk cloner
- SERVER-26832
Add tests for shell commands
- SERVER-26849
Should join balancer thread on shutdown
- SERVER-27071
ensure config.version doc cannot replicate to secondaries in config_version_rollback.js
- SERVER-27078
Race in ShardRegistry initialization causes it to not update the config server connection string
- SERVER-27102
force a ShardRegistry reload in the beginning of addShard to ensure a removed shard's ReplicaSetMonitor has been detached
- SERVER-27215
Some invariants in MigrationChunkClonerSourceLegacy are not applicable to broadcast multi-update and multi-delete
Replication
- SERVER-27024
Write additional test for new replSetStepDown behavior
- SERVER-27092
blacklist apply_ops1.js from dynamic initial sync passthroughs
- SERVER-27110
clear OplogBuffer at the end of initial sync
- SERVER-27117
set writeConcernMajorityJournalDefault to false in nojournal, inmem, and ephemeralForTest variants
- SERVER-27124
Disallow readConcern:majority reads on pv0
- SERVER-27164
Deadlock during oplog application when implicitly creating multiple collections on the same DB
- SERVER-27176
Improve performance of command writeConcern parsing
- SERVER-27196
add timeouts to stepdown_needs_electable_secondary.js
- SERVER-27206
blacklist tests involving MapReduce from initial sync dynamic passthroughs
- SERVER-27214
Disallow chaining in stepdown_needs_electable_secondary.js and stepdown_needs_majority.js
Query
- SERVER-27197
Code BSON type should not be compared using a collation-aware string comparator
- SERVER-27200
Comparison of the scope object in a BSON element of type CodeWScope should not respect the collation
- SERVER-27207
Find on view with sort through mongos may incorrectly return empty result set
- SERVER-27300
Disallow indexing of BSONType::Symbol with a non-simple collation
Aggregation
- SERVER-27201
$graphLookup triggers null pointer dereference
- SERVER-27213
Two $match stages combine incorrectly, yielding incorrect results.
Storage
- SERVER-27203
Queryable WT incorrectly read config string
- SERVER-27217
Allow nopreallocj to be specified in YAML config file
- SERVER-27246
Running applyOps with an op on a nonexistent database using mmapv1 will crash mongod
WiredTiger
- SERVER-26870
Sometimes collection data file is not removed even though collection is dropped
- SERVER-27218
Startup warning recommending the use of XFS isn't displayed properly in Mongo Shell
Operations
- SERVER-27210
3.4.0 mongo shell unable to connect using MongoURI with "ssl=true"
- SERVER-27271
rolesInfo command raises System.InvalidOperationException : Duplicate element name 'roles'.
Build and Packaging
- SERVER-17368
Create windows SSL zip file with OpenSSL files
- SERVER-27130
Switch mongo-rocks to v3.4 branch for 3.4
- SERVER-27241
Cannot write pid file to /var/run/mongodb/mongod.pid: No such file or directory
- SERVER-27377
Dynamic builds should use --no-as-needed for executables, not just libraries
Tools
- TOOLS-1498
Stats collection has large playback performance impact
- TOOLS-1501
Add option to set capture buffer size to avoid packet loss
- TOOLS-1502
Playback file contains full reply payload
- TOOLS-1516
mongoreplay: out of bounds error in "shortenreply" during record
- TOOLS-1535
Add test for restoring a collection with a default collation
- TOOLS-1561
nil pointer dereference in mongoreplay when error on new playback file creation
Internals
- SERVER-20447
Add concurrency workload that tests distributed lock code
- SERVER-26445
resmoke.py's LoggerPipe threads can stop consuming output from their pipes for long periods
- SERVER-26940
Network Interface ASIO Integration Test stress test opens too many connections on windows
- SERVER-26981
Update mongo-perf
- SERVER-27141
Update perf.yml, system-perf.yml, and longevity.yml on 3.4 branch
- SERVER-27145
Shard name from a single node mongod not used as shard index in getSerializedCluster concurrency suite file cluster.js
- SERVER-27171
Add operator<<(bool) to StringBuilderImpl
- SERVER-27202
Mark sys-perf cluster idle after regression runs
- SERVER-27223
Make Command::parseNs() more efficient
- SERVER-27240
ConnectBG must not close() while the background thread is active
- SERVER-27275
Longevity uploads compiled mongod archive to different url than sys-perf
- SERVER-27358
Socket::connect expects _timeout field to be in milliseconds
- SERVER-27363
Typo in packaging script
- SERVER-27388
Handle exceeded time limit in NI connection hook
- TOOLS-1541
support exporting views
- TOOLS-1558
use mongodb 3.4 "current" tests in master