MongoDB r3.3.10 發布
MongoDB是一個介于關系數據庫和非關系數據庫之間的產品,是非關系數據庫當中功能最豐富,最像關系數據庫的。他支持的數據結構非常松散,是類 似json的bjson格式,因此可以存儲比較復雜的數據類型。Mongo最大的特點是他支持的查詢語言非常強大,其語法有點類似于面向對象的查詢語言, 幾乎可以實現類似關系數據庫單表查詢的絕大部分功能,而且還支持對數據建立索引。
它的特點是高性能、易部署、易使用,存儲數據非常方便。主要功能特性有:
- 面向集合存儲,易存儲對象類型的數據。
- 模式自由。
- 支持動態查詢。
- 支持完全索引,包含內部對象。
- 支持查詢。
- 支持復制和故障恢復。
- 使用高效的二進制數據存儲,包括大型對象(如視頻等)。
- 自動處理碎片,以支持云計算層次的擴展性
- 支持RUBY,PYTHON,JAVA,C++,PHP等多種語言。
- 文件存儲格式為BSON(一種JSON的擴展)
- 可通過網絡訪問
更新日志
Bug修復
- [SERVER-14822] - fassert on _fd in Socket::doSSLHandshake should actually be on fd >= 0
- [SERVER-16910] - sorth.js makes invalid assumption about order of results
- [SERVER-19533] - collStats through mongoS on sharded collection incorrectly scales avgObjSize
- [SERVER-20819] - Coverity analysis defect 76290: Unchecked return value
- [SERVER-21561] - Remove privilege redaction added for backwards compatility
- [SERVER-22383] - mongo shell should permit mongodb:// URI without database name
- [SERVER-22707] - MongoDB shell's parsing of connection string uses incorrect regular expression
- [SERVER-22744] - CheckReplDBHash Should check user writable system collections
- [SERVER-22828] - Invariant failure when running applyOps with empty insert op
- [SERVER-22994] - Do not attempt to shard the 'config' db in the implicitly-shard-collections override
- [SERVER-23126] - Mongo shell segfaults
- [SERVER-23306] - Check collection attributes during (js) testing
- [SERVER-23678] - Cached minor shard version does not match that of the persistent config metadata after moveChunk
- [SERVER-23830] - On RHEL7/Centos7 mongod can't stop if pid location in conf differs from the init.d script
- [SERVER-24047] - errors.md outdated
- [SERVER-24227] - Replace the autoSplit startup option with proper setting
- [SERVER-24356] - Coverity analysis defect 99581: UNUSED_VALUE
- [SERVER-24357] - Coverity analysis defect 99580: Unsafe assignment operator
- [SERVER-24462] - findAndModify does not update Top
- [SERVER-24551] - Version 3.2 incorrect 'nojournal is not allowed when configsvr is specified' error when specifying nojournal=false
- [SERVER-24593] - virtualenv used for ese test should not use system-site-package
- [SERVER-24609] - Re-enable the 'jumbo1.js' test in the continuous stepdown suite
- [SERVER-24643] - Page size is hard-coded in Linux ProcessInfo class
- [SERVER-24693] - group7.js should deterministically check for yields
- [SERVER-24703] - DBClientWithCommands::ensureIndex() doesn't report errors
- [SERVER-24715] - Secondary crash with duplicate key error on update with different collation
- [SERVER-24718] - Wait for nodes to agree on primary in tags.js
- [SERVER-24726] - queryableBackupMode should ignore temp Collections
- [SERVER-24752] - Oplog as Buffer: OplogBufferCollection should save sentinel documents outside of collection
- [SERVER-24761] - Queries being planned with the subplanner can ignore when the PlanExecutor is killed
- [SERVER-24773] - Secondary block on initialSync when the next oplog needed was removed on primary
- [SERVER-24781] - DistLockManager on the CSRS primary should be able to re-acquire locks immediately after promotion
- [SERVER-24788] - Increase timeout waiting for processes to end with killed with SIGKILL
- [SERVER-24796] - Distlock acquisition must not retry at the level of individual 'findAndModify' command
- [SERVER-24808] - Coverity analysis defect 99677: Big parameter passed by value
- [SERVER-24810] - Swap movePrimary command for ShardingTest::ensurePrimaryShard
- [SERVER-24814] - ParsedAggregationProjection should validate that top-level field names do not start with a '$'.
- [SERVER-24821] - Use authentication identity in LDAP backed PLAIN SASL mechanism
- [SERVER-24827] - ShardRemote does not notify the ReplicaSetMonitor on write concern failures
- [SERVER-24829] - Restart LXC host, if it is not running
- [SERVER-24831] - read_pref.js should wait for mongos replSet view with proper tags
- [SERVER-24841] - getWaitingResource should ignore STATUS_NEW requests
- [SERVER-24842] - ShardingStateRecovery::recover cleanup should not wait for replication
- [SERVER-24851] - ASAN build variant configurations should respect "run_multiple_jobs"
- [SERVER-24859] - Creation of the changelog and actionlog collections does not use 'majority' write concern
- [SERVER-24882] - ParsedAggregationProjection should prohibit mixing computed fields and exclusions
- [SERVER-24883] - Initial sync creates _id index even if collection does not have one
- [SERVER-24901] - rollback5.js should not depend on size storer value to get collection size
- [SERVER-24922] - network_interface_asio_integration_test // ExceededTimeLimit
- [SERVER-24923] - TypeError when running unit tests
- [SERVER-24926] - replset8.js should call ReplSetTest.awaitReplication() to be consistent with comment in test.
- [SERVER-24927] - Ignore NamespaceNotFound errors during initial sync apply ops, because they are transient
- [SERVER-24935] - Fassert due to WT_CACHE_FULL in failed index build cleanup on inMemory engine
- [SERVER-24938] - Ensure secondary indexes are created correctly in the replication StorageInterface
- [SERVER-24946] - Evergreen.yml test for storageEngineCacheSizeGB cannot use [[ ]]
- [SERVER-24952] - Handle an empty getmore response in collection_cloner
- [SERVER-24957] - analysis script needs to run in virtualenv
- [SERVER-24990] - Update command_line_parsing.js to ignore cacheSizeGB in configuration comparison
- [SERVER-24997] - Ignore "cannot index parallel arrays" errors during initial sync because they are transient
- [SERVER-25006] - Connection Pool ASIO must indicate use separately from non-error
- [SERVER-25013] - CollectionCloner should ignore NamespaceNotFound errors from listIndexes
- [SERVER-25015] - Sharding balancer does not correctly obey tag ranges, which end in MaxKey
- [SERVER-25016] - CollectionCloner should not create _id index when autoIdIdx is false.
- [SERVER-25035] - fix malformed write concern documents in js tests
- [SERVER-25037] - ReplicationCoordinatorImpl should create DataReplicator to perform initial sync on demand
- [SERVER-25043] - 'aggregate' command gets registered with wrong name on Windows --dbg=on --opt=off builds
- [SERVER-25044] - Add missing dependency to coreshard library
- [SERVER-25048] - MultiApplier::_callback should dispose operation context before invoking user callback
- [SERVER-25049] - shardingOnDraining should not fassert on InterruptedAtShutdown
- [SERVER-25064] - Auth regression in nightlies on Windows and Solaris
- [SERVER-25072] - BalancerPolicy with a single chunk and more than one shard causes that chunk to constantly move
- [SERVER-25081] - DataReplicator initial sync should update global timestamp on completion
改進
- [SERVER-13956] - Add unique build-ids to built binaries on GNU toolchains too old to support gnu build-id.
- [SERVER-17275] - Remove "stats" field from distinct command response
- [SERVER-20206] - cleanupOrphaned should log when it starts
- [SERVER-20524] - Add new RESOURCE_MUTEX resource type to LockManager
- [SERVER-21004] - Implement wait objects that support operation interruption/expiration
- [SERVER-22105] - Run collection validation testing hook on secondary nodes
- [SERVER-22734] - Add Enterprise designation to mongo --version
- [SERVER-23096] - Config server should initialize the config.version document
- [SERVER-23138] - CanonicalQuery::normalizeTree should optimize a $nor with a single child.
- [SERVER-24212] - Collect IO stats with sar or iostat periodically
- [SERVER-24242] - Improve replication performance
- [SERVER-24302] - Make "as" option of $filter and $map default to "this"
- [SERVER-24324] - Allow Resmoke.py to run a specific file in parallel
- [SERVER-24328] - Modify resmoke.py to allow running concurrent testcases on the same fixture
- [SERVER-24335] - Shell sharding helpers should use wtimeout and respond appropriately
- [SERVER-24511] - Make frequency with which background job that kills timed-out cursors is run configurable
- [SERVER-24523] - Include file and line numbers in assertion messages
- [SERVER-24580] - Improve performance when WiredTiger cache is full
- [SERVER-24636] - Add option to burn_in_tests to specify githash to compare to
- [SERVER-24640] - Implement getDependencies() for $facet stage
- [SERVER-24714] - $graphLookup should be able to apply a filter to the documents it traverses
- [SERVER-24732] - add a runBatchWriteCommand() method to Shard that checks for errors by unwrapping the BatchedCommandResponse
- [SERVER-24765] - add test suite for views
- [SERVER-24789] - Run the JS validate hook as part of the FSM suite
- [SERVER-24790] - Run the JS replset dbhash hook as part of the FSM suite
- [SERVER-24798] - Improve log messages for LDAP Authorization
- [SERVER-24858] - Tighten assertions around waiting for write concern
- [SERVER-24875] - Run concurrent fuzzing clients on a windows replica set
- [SERVER-24876] - Run RocksDB sharded concurrency tests on a distro with more memory
- [SERVER-24878] - do not exit with a non-zero code when shutting down a secondary
- [SERVER-24884] - change concurrent fuzzing to only run hooks once
- [SERVER-24928] - Remove the ReadConcernResponse class
- [SERVER-24939] - Pull read concern extraction and checks to a separate function
- [SERVER-24959] - Increase test coverage for decimal
- [SERVER-24979] - Replace use of fassertStatusOK(status) with fassertStatusOK(msgid, status)
- [SERVER-25054] - Aggregation should error if you reference the text score and there is no text score available
- [SERVER-25078] - Add a jstestfuzz_concurrent_sharded suite
新特性
- [SERVER-17959] - option to redact sensitive data from system logs
- [SERVER-18399] - Remind user that their Mongo process is controlled by Cloud/Ops Manager Automation via the mongo shell
- [SERVER-23815] - Add $bucket aggregation stage
- [SERVER-24521] - Implement redact methods for log redaction
- [SERVER-24522] - Log redaction command line switch
- [SERVER-24820] - move push tasks to use relevant ec2 distro rather than rhel55
- [SERVER-24881] - Add StepUp Command
- [SERVER-24925] - add url_raw field to resmoke
Question
- [SERVER-23200] - Where did --enable-new-dtags come from in the ppc64le build
Task
- [SERVER-12703] - WriteConcernOptions::parse should error on invalid WriteConcern options
- [SERVER-22660] - OpObserver on config server for inserts to config.shards from old mongos
- [SERVER-23172] - Allow use of indices for collation-aware queries that match nested objects or arrays
- [SERVER-23555] - Add aarch64 Enterprise and Community Build Variants to Evergreen
- [SERVER-23750] - Make DataReplicator::initialSync the default initial sync method
- [SERVER-23882] - Collation should be considered part of a query's shape
- [SERVER-23924] - Make _id index inherit the collection's default collation
- [SERVER-24073] - Update system perf, longevity, and distributed correctness projects to use dedicated work directory
- [SERVER-24162] - Implement ServiceEntryPoint for mongod and mongos
- [SERVER-24171] - Implement TransportLayerLegacy
- [SERVER-24182] - Add collation-related information to explain output
- [SERVER-24245] - Migrate sanitizer builds to Ubuntu 16.04 images
- [SERVER-24293] - Add evergreen variant that runs tests with 3.2 initial sync code
- [SERVER-24317] - Add a builder using ASIO implementation of AbstractMessagingPort
- [SERVER-24404] - Collation for update modifiers
- [SERVER-24415] - Remove usages of shared_ptr<CollectionMetadata>
- [SERVER-24494] - Parsing Linearizable Read command
- [SERVER-24524] - Use log redaction functions to redact assertions
- [SERVER-24532] - Create a MigrationManager on the balancer
- [SERVER-24572] - Add support for collecting information from /proc/stat
- [SERVER-24605] - Add support for collecting information from /proc/meminfo
- [SERVER-24606] - Add support for collecting information from /proc/diskstats
- [SERVER-24607] - Add Collector for system statistics
- [SERVER-24629] - Add concurrency protection to MetadataManager
- [SERVER-24642] - Add SLES 12.1 zSeries build variant
- [SERVER-24716] - Remove the CheckReplDBHashDeprecated hook
- [SERVER-24720] - Move the balancer status from the serverStatus section to a balancerStatus command
- [SERVER-24721] - Make BalancerPolicy::balance return more than one migration per collection (if appropriate)
- [SERVER-24733] - Oplog as Buffer: abandon snapshot when getting oplog entries from oplog buffer
- [SERVER-24751] - Extend shardCollection command to accept a collation parameter
- [SERVER-24784] - Oplog as Buffer: initial sync should shutdown BackgroundSync before transitioning to steady state replication
- [SERVER-24794] - Write test for LDAP setParameter support
- [SERVER-24817] - Wire clusterId into all places that need it
- [SERVER-24819] - WiredTiger changes for MongoDB 3.3.10
- [SERVER-24830] - Improve error handling for FTDC uploads in Evergreen
- [SERVER-24840] - Remove unnecessary parameters to BSONObj::toString
- [SERVER-24849] - Vendor SCons
- [SERVER-24865] - Add function to Balancer to call split chunk
- [SERVER-24869] - TaskExecutor test fixture should expose shutdown/joining of task executor outside of tearDown()
- [SERVER-24895] - Increase scp ConnectTimeout for scp in Jepsen task
- [SERVER-24911] - Run the concurrent fuzzer on more build variants
- [SERVER-24919] - Perf.yml should consistently call pip install in venv
- [SERVER-24931] - Remove the jepsen_findAndModify_600s_WT task from Evergreen
- [SERVER-24945] - convert CollectionCloner and DatabaseCloner to use TaskExecutor
- [SERVER-24955] - add wait()/join() to TaskRunner
- [SERVER-24988] - Re-license SCons utilities as Apache 2
- [SERVER-25003] - load clusterId into memory on config server transition to primary if needed
- [SERVER-25014] - Create the CollectionRangeDeleter class shell without implementation
- [SERVER-25069] - CollectionCloner should create TaskRunner using external thread pool provided at construction
- [SERVER-25077] - Additional diagnostics for killop.js
Sub-task
- [SERVER-24645] - Make $addToSet respect collation
- [SERVER-24646] - Make $pullAll respect collation
- [SERVER-24647] - Add integration tests for collation-aware $pull
- [SERVER-24648] - Make the $sort modifier of $push respect collation
- [SERVER-24649] - Add integration tests for $set/$unset.
- [SERVER-24650] - Add integration tests for the $ positional update operator respecting collation
下載
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!