Release Notes - Core Server - Version 3.3.11 - HTML format

Bug

  • [SERVER-13087] - Improve audit config flag sanity checks
  • [SERVER-13965] - errnoWithDescription can leak memory on Windows
  • [SERVER-16668] - SASL PLAIN authentication mechanism is inconsistent between community and enterprise
  • [SERVER-17120] - Improperly signed certificates may pass hostname validation
  • [SERVER-20306] - 75% excess memory usage under WiredTiger during stress test
  • [SERVER-21378] - Add a setParameter that will bypass auth metadata startup validation checks
  • [SERVER-21554] - Coverity analysis defect 76764: Macro compares unsigned to 0
  • [SERVER-21626] - Balancer should skip namespaces which get dropped while it is running
  • [SERVER-21839] - Failed to build with --use-system-asio
  • [SERVER-22053] - Insertion of Array with undefined/null components.
  • [SERVER-22620] - Improve mongos handling of a very stale secondary config server
  • [SERVER-23073] - Aggregation checks the output collection's sharding state without collection lock
  • [SERVER-23168] - Shell killOperationsOnAllConnections doesn't handle currentOp failure
  • [SERVER-23192] - mongos and shards will become unusable if contact is lost with all CSRS config server nodes for more than 30 consecutive failed attempts to contact
  • [SERVER-23345] - RAII semantics for ReplicaSetMonitor
  • [SERVER-23397] - SHA1 warning for Debian Release file signature
  • [SERVER-23626] - Function.prototype isn't treated as BSON type Code
  • [SERVER-24067] - TaskExecutor RemoteCommandCallbackArgs should include elapsedMS and metadata
  • [SERVER-24320] - Planner can attempt to use invalid index when using plan cache due to plan cache key / MatchExpression sorting inconsistency
  • [SERVER-24566] - Debug build fails in configure
  • [SERVER-24621] - Make find command min/max options respect the collation
  • [SERVER-24631] - TTL Monitor performance degradation on MongoDB 3.0
  • [SERVER-24756] - Make clang_format.py robust to transient HTTP errors
  • [SERVER-24785] - backup_restore.js fails when observing FTDC interim files
  • [SERVER-24966] - TestCase.configure can only be called once
  • [SERVER-24971] - Excessive memory held by sessions when application threads do evictions
  • [SERVER-24986] - Collection validation fails when a partial geo index is present
  • [SERVER-25039] - Aggregation can attempt to re-plan after collection has been dropped
  • [SERVER-25056] - ImplScope should check interruptability against an opctx
  • [SERVER-25075] - Building 2dsphere index uses excessive memory
  • [SERVER-25084] - Data Replicator Initial Sync does not finish when using more than 12 databases
  • [SERVER-25130] - DataReplicator::_waitOnAndResetAll() should not attempt to join null DatabasesCloner
  • [SERVER-25133] - fix racy conditions in handling addShard from 3.2 mongos
  • [SERVER-25135] - Mongos on startup becomes unusable if config servers are not reachable
  • [SERVER-25136] - Unable to create 2d index on collection with non-simple default collation
  • [SERVER-25137] - aggregation with graph lookup into non-existent collection throws an error
  • [SERVER-25146] - JS replset dbhash hook fails when checking nindexes with a collection containing a background index
  • [SERVER-25148] - Fetcher should deliver CallbackCanceled instead of ShutdownInProgress to callbacks on cancellation
  • [SERVER-25150] - DataReplicatorTest::failsOnClone hangs intermittently
  • [SERVER-25170] - Make moveChunk commands append an "epoch" field
  • [SERVER-25177] - mongo-rocks compile broken by StringData::Hasher changes
  • [SERVER-25178] - Enterprise ARM builds going to community downloads bucket
  • [SERVER-25187] - Division by 0 in dataSize command when collection has zero records
  • [SERVER-25192] - Object.extend doesn't handle null properties
  • [SERVER-25197] - DatabaseCloner should not override CollectionCloner::_scheduleDbWork by default
  • [SERVER-25198] - Increase scons stack size for eslint
  • [SERVER-25204] - CSRS config servers require majority write concern even for local database in 3.3.10
  • [SERVER-25210] - Deadlock in Master/Slave Startup on Windows 2008 R2
  • [SERVER-25224] - Only insert oplog seed document in initial sync if no other operations have been applied
  • [SERVER-25225] - SLES 12 zSeries build is missing the -march and -mtune flags
  • [SERVER-25226] - diagdata.js needs to wait for FTDC to startup
  • [SERVER-25234] - DataReplicator::_onClonerFinish should use sync source passed to _runInitialSyncAttempt_inlock
  • [SERVER-25241] - Sharded work being done on config server secondary
  • [SERVER-25253] - set Fetcher::_inShutdown immediately after locking in Fetcher::cancel()
  • [SERVER-25254] - Only advance config server optime in response to messages from cluster members
  • [SERVER-25256] - RollbackChecker::hasHadRollback should check if callback handle is valid before waiting on it
  • [SERVER-25271] - burn_in_tests.py not picking up untracked files properly
  • [SERVER-25292] - Decrease -j value on windows_64_2k8 compiles
  • [SERVER-25300] - Incorrect syntax in for loop in collection.js
  • [SERVER-25315] - Update migration_ignore_interrupts.js behavior now that we have parallel manual moveChunks
  • [SERVER-25322] - DatabasesCloner should not clone more than one database at a time
  • [SERVER-25339] - Increase wtimeout in replset2.js to 60 seconds
  • [SERVER-25342] - Race condition in migrateBig.js between last migration cleanup and no-predicate count
  • [SERVER-25344] - Race between MigrationDestinationManager thread startup and abort
  • [SERVER-25362] - Make slow1 and slow1_WT tasks serial
  • [SERVER-25366] - mongo shell fails to kill running operations on exit
  • [SERVER-25369] - Coverity analysis defect 99749: PW.PARAMETER_HIDDEN
  • [SERVER-25374] - CollectionCloner should disable replicated writes on operation context when creating a collection without indexes.
  • [SERVER-25379] - remove single document instead of dropping all dbs in config_server_catalog_test OnlyRunsOnce
  • [SERVER-25380] - StorageInterfaceImpl should use provided OperationContext to check admin db
  • [SERVER-25381] - jstestfuzz tasks should not run with --continueOnFailure (newer variants)
  • [SERVER-25383] - sharding_with_x509.js expects fast count to return an exact result
  • [SERVER-25394] - Cannot index Decimal inside a subdoc
  • [SERVER-25398] - race between join() and _runThread() in RSDataSync results in destructor throwing exception
  • [SERVER-25412] - DataReplicator::doInitialSync should not mask errors from _runInitialSyncAttempt_inlock with InitialSyncFailure
  • [SERVER-25413] - gperftools fails to compile from source on SLES 11 on zSeries s390x
  • [SERVER-25416] - killop_own_ops.js should use failpoints instead of long running $where
  • [SERVER-25418] - in shard_aware_on_config_election.js, write to config server through mongos not directly
  • [SERVER-25419] - mongos doesn't recognize the $facet stage
  • [SERVER-25424] - Configuration for RedHat 5 In repository configuration for 3.2 and 3.0 is Incorrect
  • [SERVER-25427] - Waiting for write concern in lagged_config_secondary.js fails due to chained replication
  • [SERVER-25428] - Initialize OplogUpdateEntryArgs bool in DurableViewCatalog upsert
  • [SERVER-25447] - Increase timeout in mongos_cache_invalidation.js
  • [SERVER-25450] - MongoRunner.runMongoTool() attempts to pass --dialTimeout option to bsondump
  • [SERVER-25451] - gridfs.js should shard sharded_files_id_n.fs.chunks with key {files_id: 1, n: 1} and unique=true
  • [SERVER-25455] - Use-after-free in DBClientConnection when handling application name metadata
  • [SERVER-25457] - DataReplicator::_onOplogFetchFinish should pause fetcher
  • [SERVER-25461] - DataReplicator should shut down all components (Applier/Fetcher/Cloner) after every initial sync attempt
  • [SERVER-25462] - transport_layer_mock_test reference binding to null pointer
  • [SERVER-25469] - bench_test_crud_commands.js attempts to perform journaled writes against a mongod without journaling enabled
  • [SERVER-25473] - mongos attempts to optimize a pipeline without having injected an expression context
  • [SERVER-25482] - Coverity analysis defect 99830: Unchecked return value
  • [SERVER-25491] - Support larger page sizes in datafile integration test.
  • [SERVER-25499] - rhel62/rhel55 push tasks should use respective distros rather than rhel70
  • [SERVER-25500] - Collection drops can cause busy applications to stall
  • [SERVER-25538] - StorageInterfaceImpl::_findOrDeleteOne returns unowned BSON document under RocksDB
  • [SERVER-25564] - backup_restore.js - increase timeout for hidden node and re-evaluate primary
  • [SERVER-27128] - 3.2.11 RPM Install Issue

New Feature

  • [SERVER-72] - handshake optional parameters for driver name/version
  • [SERVER-90] - case insensitive index
  • [SERVER-1920] - Sort by collation
  • [SERVER-3018] - Compression of wire protocol
  • [SERVER-5781] - Implement $addFields aggregation stage for using expression language to add new fields to a document
  • [SERVER-8336] - Add connection attributes
  • [SERVER-17856] - users on mongods should always be able to run currentOp and killOp on their own operations
  • [SERVER-23313] - Add a $replaceRoot stage which allows promoting a sub-document to the top level
  • [SERVER-24152] - Add $bucketAuto stage
  • [SERVER-24823] - Support admin commands on views
  • [SERVER-24838] - Add Scons Tool for Capturing Dependency Graph ( aka dagger )
  • [SERVER-24921] - No way to $project out just the _id field in aggregation
  • [SERVER-25171] - Add cache line to to SCons args
  • [SERVER-25263] - Implement MessageCompressorManager
  • [SERVER-25264] - Implement MessageCompressorInterface and MessageCompressorRegistry
  • [SERVER-25265] - Implement SnappyMessageCompressor
  • [SERVER-25267] - Integrate Message Compression with Networking
  • [SERVER-25287] - Implement a functional QR storage engine for MMAP and WT
  • [SERVER-25395] - perf projects on dynamic hosts should use scons cache
  • [SERVER-25408] - update push tasks to add support for signing repository metadata
  • [SERVER-25466] - Add server status section for message compression
  • [SERVER-25560] - remove ubuntu1410 builder from evergreen (master)

Task

  • [SERVER-10727] - Cleanup TTL internals
  • [SERVER-19741] - WriteError and WriteConcernError are not Error instances
  • [SERVER-21088] - Change _massageObject string processing
  • [SERVER-22665] - mixed cluster testing for mongod instances aware that they are part of a sharded cluster
  • [SERVER-22826] - Support permission provisioning through through a x.509 certificate extension
  • [SERVER-23349] - Make aggregation expressions/accumulators which perform string comparisons respect the collation
  • [SERVER-23662] - Implement "catch-up timeout" configuration variable
  • [SERVER-23663] - New primary syncs from chosen node to catch up with timeout
  • [SERVER-23913] - Implement TransportLayer test suite and mock
  • [SERVER-23920] - Disallow --master/--slave with --shardsvr
  • [SERVER-24063] - Report collation to the log, profiler, and currentOp
  • [SERVER-24213] - Make addShard return success if attempting to add an already existing shard
  • [SERVER-24239] - Add support for building indices with the same key pattern but different collations
  • [SERVER-24352] - configs initialize sharding awareness on sharding-unaware shards on transition to primary
  • [SERVER-24367] - Implement CollectionRangeDeleter task lifetime management
  • [SERVER-24393] - Implement updateZoneKeyRange and _configsvrUpdateZoneKeyRange
  • [SERVER-24394] - Implement Zone Sharding helpers
  • [SERVER-24438] - Extend mongos catalog to store collection default collation and shard key collation
  • [SERVER-24439] - Make mongos commands over sharded collections inherit the collection default collation
  • [SERVER-24465] - Remove recoverShardingState parameter
  • [SERVER-24468] - add test to check that minOpTimeUpdaters is used to fetch latest opTime if shard fails during a migration
  • [SERVER-24491] - Oplog as Buffer: Integration Tests
  • [SERVER-24497] - implement noop writes to test for primary-ship
  • [SERVER-24569] - Maintain the 'rangesToClean' and 'metadataInUse' sets on chunk migrations
  • [SERVER-24573] - Implement CollectionRangeDeleter range deletion logic
  • [SERVER-24608] - Add Windows performance counter collector
  • [SERVER-24610] - Add FTDC Collector for Windows Performance Counters
  • [SERVER-24611] - Implement ClientMetadata class
  • [SERVER-24613] - Add Client Metadata Documents' AppName to slow operation logs
  • [SERVER-24614] - Add Client Metadata's appname to system.profile
  • [SERVER-24615] - Enhance Egress Metadata Hook support using OperationContext
  • [SERVER-24616] - Add new getDiagnosticData command
  • [SERVER-24641] - Add Ubuntu 16.04 Enterprise Power build variant
  • [SERVER-24654] - Implement privilege checking for $facet stage
  • [SERVER-24664] - Get rid of calls to ShardingState::getCollectionMetadata
  • [SERVER-24676] - Implement support for maxStalenessMS in the ReplicaSetMonitor
  • [SERVER-24699] - Update Evergreen config to publish repos in push tasks
  • [SERVER-24724] - Views works with authorization
  • [SERVER-24853] - Refactor Balancer code to use MigrationManager in order to move chunks in parallel
  • [SERVER-24856] - Manual moveChunk requests should go through the balancer running on the CSRS primary
  • [SERVER-24954] - Add sys-perf tasks to run initial sync with data replicator
  • [SERVER-24989] - Complete unit testing of MigrationManager
  • [SERVER-24999] - Create _configsvrSplitChunk command to replace applyOps sent from Shard->ConfigServer
  • [SERVER-25000] - Create _configsvrMergeChunk command to replace applyOps sent from Shard->ConfigServer
  • [SERVER-25005] - Execute queries in $lookup and $graphLookup with an explicit Pipeline instead of DBDirectClient
  • [SERVER-25010] - Add a Notification object with each object in MetadataManager::_rangesToClean
  • [SERVER-25011] - Add a single-thread task executor for cleaning up orphaned ranges
  • [SERVER-25017] - Remove RemoteCommandRunnerImpl files
  • [SERVER-25020] - Expose kRefreshRate for ReadPreference without circular dependencies
  • [SERVER-25032] - Update sync source selection in DataReplicator::doInitialSync
  • [SERVER-25033] - Remove !_oplogBuffer block in DataReplicator::_enqueueDocuments
  • [SERVER-25034] - Remove ErrorCodes::OplogOutOfOrder block from DataReplicator::_onOplogFetchFinish
  • [SERVER-25050] - Re-evaluate 30 second maxTimeMs included with every command sent to the config servers
  • [SERVER-25073] - Add Ubuntu 16.04 zSeries build variant
  • [SERVER-25105] - add OpObserver for deletes to config.shards to cancel corresponding upsertShardIdentityForAddShard task
  • [SERVER-25116] - Replace ScopedZoneOpExclusiveLock with ResourceMutex
  • [SERVER-25138] - Remove dependencies between different tasks/variants for performance tests in Evergreen sys-perf project
  • [SERVER-25139] - Make $lookup and $graphLookup respect the collation
  • [SERVER-25142] - Oplog as Buffer: use OplogBufferCollection as default for initial sync
  • [SERVER-25152] - add logging and stats to CollectionBulkLoaderImpl
  • [SERVER-25154] - unit tests for addShard compatibility path
  • [SERVER-25193] - Update system_perf.yml to simplify patch builds
  • [SERVER-25194] - Update longevity.yml to copy over appropriate test_control.yml file
  • [SERVER-25233] - ThreadPool should log escaped exception information
  • [SERVER-25244] - unit tests for removeShard compatibility path
  • [SERVER-25259] - Drop temporary databases in dbhash testing hook
  • [SERVER-25266] - Enhance NetworkASIO to send the client metadata document
  • [SERVER-25273] - Concurrency suite dbHash check should call checkDBHashesFsyncLocked
  • [SERVER-25274] - Make checkDBHashesFsyncLocked from jstests/hooks/check_repl_dbhash.js, an internal function
  • [SERVER-25281] - clean up Fetcher/Applier/CollectionCloner/DatabaseCloner lifecycle function names
  • [SERVER-25295] - Add cloning commands to writeConcern-aware command list in readConcern passthrough
  • [SERVER-25298] - make ConfigServerTestFixture use a real OpObserver
  • [SERVER-25302] - turn on YCSB throughput analysis for YCSB tasks in sys-perf
  • [SERVER-25307] - Use ensurePrimaryShard in validate_collection.js
  • [SERVER-25310] - Add SLES 11.4 zSeries build variant
  • [SERVER-25313] - Rename aarch64 push arch to arm64
  • [SERVER-25321] - Save mongod logs for a Jepsen task which has timed out
  • [SERVER-25330] - Update system_perf.yml to use different test_control file for replica and sharded ycsb
  • [SERVER-25350] - Move thread initialization from subclasses into ServiceContextMongoDTest::setup()
  • [SERVER-25386] - Add destructor guard to rs_sync.cpp
  • [SERVER-25388] - Use consistent options parsing to force journaling to be enabled with configsvr
  • [SERVER-25399] - Disable chaining in initial sync static passthrough
  • [SERVER-25404] - Turn on mmapv1 data replicator initial sync workload in sys-perf
  • [SERVER-25417] - harden checks around using --shardSvr, --overrideShardIdentity, and queryableBackupMode
  • [SERVER-25448] - Replace all usages of ClientBasic with Client
  • [SERVER-25449] - assert inserts in mongos_no_detect_sharding.js succeeds
  • [SERVER-25486] - increase wait time in slavedelay1.js to check replication delay
  • [SERVER-25494] - Add arm64 to the repo_config for ubuntu 16.04 community and enterprise
  • [SERVER-25512] - Remove custom Java heap settings for Jepsen task
  • [SERVER-25513] - Jepsen repo commit/version
  • [SERVER-25522] - Hashing of _id during application of oplog entries must respect the collation
  • [SERVER-25541] - Fix waiting on slow stop and unexpected election in catchup.js
  • [SERVER-25543] - add "shardsvr" startup option for shards in ShardedClusterFixture
  • [SERVER-25562] - Archive stdout.log with mongod.log for Jepsen task
  • [SERVER-25571] - Remove/add jstestfuzz tasks from variants in etc/evergreen.yml

Improvement

  • [SERVER-1811] - ARM support
  • [SERVER-1916] - Include the persistent connection id string in the HTTP REST administrator page's Clients table.
  • [SERVER-9492] - Report host uptime/start-time
  • [SERVER-13480] - Sort output of usersInfo command
  • [SERVER-14769] - Improve the "The server certificate does not match the host name " error
  • [SERVER-19730] - logRotate should log intention prior to rotation
  • [SERVER-20239] - Built-in sampling heap profiler
  • [SERVER-21503] - Update SecureAllocator to use MADV_DONTDUMP
  • [SERVER-21818] - Capture system metrics in FTDC
  • [SERVER-22734] - Add Enterprise designation to mongo --version
  • [SERVER-23859] - Smoke test LDAP connection string
  • [SERVER-24242] - Improve replication performance
  • [SERVER-24304] - Add more DataReplicator::initialSync unit tests
  • [SERVER-24476] - Enable coredumps on Ubuntu POC
  • [SERVER-24488] - Create a CommitChunkMigrationRequest class
  • [SERVER-24506] - Support views in cloner & DataReplicator/DatabaseCloner
  • [SERVER-24515] - Include encryption key id in serverStatus
  • [SERVER-24534] - Commands that accept user predicates should use collection default collation
  • [SERVER-24538] - Make small_oplog_rs_initsync_static passthrough test to periodically run initial sync with data to sync
  • [SERVER-24568] - Reflect operations on views in their collStats
  • [SERVER-24637] - Enable burn_in_tests_WT task for all builds
  • [SERVER-24662] - Update to PCRE 8.39
  • [SERVER-24673] - Separate LDAP server hostnames and protocol mechanism
  • [SERVER-24729] - stagger the launching of resmoke jobs
  • [SERVER-24762] - support views of sharded collections
  • [SERVER-24766] - implement basic view functionality
  • [SERVER-24767] - implement replication for views
  • [SERVER-24768] - implement cycle detection for view create/collMod
  • [SERVER-24769] - Support $lookup and $graphLookup with the 'from' field as a view
  • [SERVER-24780] - Create audit log entry for setParameter command
  • [SERVER-24873] - Make StringComparator a non-default parameter in mutable bson.
  • [SERVER-24910] - Don't take encryption key store backup on key rotation
  • [SERVER-25066] - Surface automation state in the shell prompt
  • [SERVER-25153] - Add mixed version shards to sharding_last_stable_mongos suite
  • [SERVER-25167] - NetworkInterfaceASIO should unconditionally log information about connection failures
  • [SERVER-25179] - Include only subset of memory statistics in diagnostic data
  • [SERVER-25181] - Increase data retention for diagnostic data capture
  • [SERVER-25182] - Add metric for number of CPUs
  • [SERVER-25185] - Move UBSAN builder from Debian 8.1 to Ubuntu 16.04
  • [SERVER-25199] - performance project: enable time logic for log analysis
  • [SERVER-25214] - When available, compile C language files in C11 mode
  • [SERVER-25228] - Ubuntu 16.04 ppc64le builder is missing -mcpu and -mtune flags
  • [SERVER-25229] - set initialSyncState status on every error
  • [SERVER-25232] - QueryableBackupMode + WT causes a full database scan
  • [SERVER-25258] - Improve parsing of killOp opID in mongos
  • [SERVER-25270] - enable concurrent fuzzing on all buildvariants
  • [SERVER-25282] - Change --ldapBindSASLMechs to --ldapBindSaslMechanisms
  • [SERVER-25306] - Only run asio builders daily
  • [SERVER-25325] - better logging in ReplicationCoordinatorExternalStateImpl::shutdown()
  • [SERVER-25340] - Remove MONGODB-CR cluster authentication fallback
  • [SERVER-25343] - call std::abort() on verify and wassert failures on debug builds
  • [SERVER-25372] - All builders required for patch builds should start with '!' so that they sort first
  • [SERVER-25435] - repo publishing should use dedicated repo keys.
  • [SERVER-25467] - turn on support for non-materialized view by default
  • [SERVER-25530] - Remove unused include in ldap_options

Edit/Copy Release Notes

The text area below allows the project release notes to be edited and copied to another document.