|
| 1 | +# Server Wire version and Feature List |
| 2 | + |
| 3 | +| Server version | Wire version | Feature List | |
| 4 | +| -------------- | ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | |
| 5 | +| 2.6 | 1 | <p>Aggregation cursor</p> <p>Auth commands</p> | |
| 6 | +| 2.6 | 2 | <p>Write commands (insert/update/delete)</p> <p>Aggregation $out pipeline operator</p> | |
| 7 | +| 3.0 | 3 | <p>listCollections</p> <p>listIndexes</p> <p>SCRAM-SHA-1</p> <p>explain command</p> | |
| 8 | +| 3.2 | 4 | <p>(find/getMore/killCursors) commands</p> <p>currentOp command</p> <p>fsyncUnlock command</p> <p>findAndModify take write concern</p> <p>Commands take read concern</p> <p>Document-level validation</p> <p>explain command supports distinct and findAndModify</p> | |
| 9 | +| 3.4 | 5 | <p>Commands take write concern</p> <p>Commands take collation</p> | |
| 10 | +| 3.6 | 6 | <p>Supports OP_MSG</p> <p>Collection-level ChangeStream support</p> <p>Retryable Writes</p> <p>Causally Consistent Reads</p> <p>Logical Sessions</p> <p>update "arrayFilters" option</p> | |
| 11 | +| 4.0 | 7 | <p>ReplicaSet transactions</p> <p>Database and cluster-level change streams and startAtOperationTime option</p> | |
| 12 | +| 4.2 | 8 | <p>Sharded transactions</p> <p>Aggregation $merge pipeline operator</p> <p>update "hint" option</p> | |
| 13 | +| 4.4 | 9 | <p>Streaming protocol for SDAM</p> <p>ResumableChangeStreamError error label</p> <p>delete "hint" option</p> <p>findAndModify "hint" option</p> <p>createIndexes "commitQuorum" option</p> | |
| 14 | +| 5.0 | 13 | $out and $merge on secondaries (technically FCV 4.4+) | |
| 15 | +| 5.1 | 14 | | |
| 16 | +| 5.2 | 15 | | |
| 17 | +| 5.3 | 16 | | |
| 18 | +| 6.0 | 17 | <p>Support for Partial Indexes</p><p>Sharded Time Series Collections</p><p>FCV set to 5.0</p> | |
| 19 | +| 6.1 | 18 | <p>Update Perl Compatible Regular Expressions version to PCRE2</p><p>Add `*UCP` option for regex queries</p> | |
| 20 | +| 6.2 | 19 | <p>Collection validation ensures BSON documents conform to BSON spec</p><p>Collection validation checks time series collections for internal consistency</p> | |
| 21 | +| 7.0 | 21 | <p>Atlas Search Index Management</p><p>`$currentOp` aggregation Metrics</p><p>Compound Wildcard Indexes</p><p>Support large change stream events via `$changeStreamSplitLargeEvent` stage</p><p>`serverStatus` output gets new fields</p> <p>Slot Based Query Execution</p> | |
| 22 | +| 7.1 | 22 | <p>Improved Index Builds</p><p>Exhaust Cursors Enabled for Sharded Clusters</p><p>New Sharding Statistics for Chunk Migrations</p><p>Self-Managed Backups of Sharded Clusters | |
| 23 | +| 7.2 | 23 | <p>Database Validation on `mongos` Aggregation Queries</p><p>`serverStatus` Metrics</p><p>Default Chunks Per Shard</p> | |
| 24 | +| 7.3 | 24 | <p>Compaction Improvements</p><p>New `serverStatus` metrics</p> | |
| 25 | +| 8.0 | 25 | <p>Range Encryption GA</p><p>OIDC authentication mechanism</p><p>New `bulkWrite` command</p><p>`snapshot` read concern on capped collections</p> | |
| 26 | + |
| 27 | +In server versions 5.0 and earlier, the wire version was defined as a numeric literal in |
| 28 | +[src/mongo/db/wire_version.h](https://github.com/mongodb/mongo/blob/master/src/mongo/db/wire_version.h). Since server |
| 29 | +version 5.1 ([SERVER-58346](https://jira.mongodb.org/browse/SERVER-58346)), the wire version is derived from the number |
| 30 | +of releases since 4.0 (using |
| 31 | +[src/mongo/util/version/releases.h.tpl](https://github.com/mongodb/mongo/blob/master/src/mongo/util/version/releases.h.tpl) |
| 32 | +and |
| 33 | +[src/mongo/util/version/releases.yml](https://github.com/mongodb/mongo/blob/master/src/mongo/util/version/releases.yml)). |
0 commit comments