MongoDB 4.2.0-rc0, the first release candidate of MongoDB 4.2, is out and is ready for testing. This is the culmination of the 4.1.x development series, and includes many exciting new features. Here are some of the highlights:
Distributed Transactions: Support for multi-document ACID transactions is now extended to sharded clusters.
Global Point In Time Reads: Snapshot read isolation in 4.2 guarantees your apps are always returned a consistent view of data, even when the data is distributed across a sharded cluster, and as it is being modified by other operations.
Large Transactions: By representing transactions across multiple oplog entries, you can now write more than 16MB of data in a single ACID transaction.
Transaction Diagnostics and Error Handling: Transactions metrics are now written to system logs, helping you optimize application performance. In addition, new driver-side helpers make it easier for you to develop transaction retry logic in your app.
Mutable Shard Key Values: You can now update one or more shard key values to modify the placement of a document in a cluster using a single, all-or-nothing ACID transaction (subject to the existing 60 second default execution time).
On-Demand Materialized Views: Outputs from aggregation pipeline queries can now be merged with existing persisted result sets whenever you run the pipeline, giving you materialized views that are refreshed on-demand.
Wildcard indexes: You can now define a filter that automatically indexes matching fields, sub-documents, and arrays in a document, providing much simpler schema design for polymorphic document structures.
More Expressive Update Language: You can now use the aggregation pipeline to construct update operations based on values in other fields, with all updates performed in a single atomic operation.
New Mathematical Operators: New aggregation operators and expressions: MongoDB 4.2 adds support for new regex aggregation operators, a dozen new mathematical expressions for rounding and trigonometry, as well as current time expressions like $$NOW to reduce the amount of code you need to implement back in your app tier.
New Online Index Builds: As fast as foreground builds, they don’t block service to the app
10x Faster stepDown and Keepalive Connections: As soon as you issue a stepDown command, the MongoDB primary now immediately initiates an election rather than wait on the secondaries to call it. After the stepDown, existing read connections on the former primary are kept open, and are only re-established on the new primary once reads have completed and their associated cursors closed.
Storage Node Watchdog: Adding to existing network heartbeats, the Storage Node Watchdog can be used to monitor MongoDB’s underlying filesystems and initiate an automated failover if any of them becomes unresponsive. This allows the cluster to automatically self-heal in the face of a wider range of failure conditions.
Faster Initial Sync: You can now add new nodes to a replica set 15% faster, while also reducing load on the source replica.
Zstandard Compression: MongoDB 4.2 adds support for Zstandard compression, providing up to 55% storage savings compared to snappy, with lower CPU overhead than Zlib.
Improved Auditing Performance: We’ve refactored internal locking within the Auditing plugin, resulting in a 3x performance improvement.
Multi-Certificate Authority and Forward Secrecy TLS Encryption: Separate Certificate Authorities can now be configured for inbound and outbound encrypted connections to a MongoDB Atlas cluster. In-flight encryption also now supports the latest TLS cipher suites offering Forward Secrecy.
Zero Downtime Certificate and Keyfile Rotation: You can now change your keyfiles and X.509 certificates without having to take down your cluster.
MongoDB 4.2 Release Notes | Changelog | Downloads
-- The MongoDB Team