> For the complete MongoDB documentation index, see www.mongodb.com/docs/llms.txt

# Release Notes for MongoDB 8.3

**Important:**

MongoDB 8.3 is the latest minor release. Starting with MongoDB 8.2, minor releases are available for on-premises deployments (Community and EA) for specific use cases. For more information, see [MongoDB Versioning.](https://www.mongodb.com/docs/manual/reference/versioning.md#std-label-release-version-numbers)

To install the latest MongoDB version supported for on-premises use, see the [installation instructions.](https://www.mongodb.com/docs/manual/installation.md#std-label-tutorial-installation)

For general guidance on MongoDB version numbering, release types, and upgrade paths, see [MongoDB Versions and Upgrade Paths.](https://www.mongodb.com/docs/mongodb-versions.md#std-label-versions-and-upgrade-paths)

**Warning: Past Release Limitations**

The Critical Advisories below affect some prior MongoDB versions. If your deployment depends on features impacted by a Critical Advisory, upgrade to the latest available patch release.

| Issue | Affected Versions |
| --- | --- |
| [SERVER-131805](https://jira.mongodb.org/browse/SERVER-131805) | 8.3.0 - 8.3.12 |

## Patch Releases

### 8.3.13 - Oct 13, 2026

This release contains important security and reliability improvements.

**Important:**

MongoDB 8.3.13 contains fixes for:

- [CVE-2026-96297](https://www.cve.org/CVERecord?id=CVE-2026-96297)

- [CVE-2026-96299](https://www.cve.org/CVERecord?id=CVE-2026-96299)

- [CVE-2026-103965](https://www.cve.org/CVERecord?id=CVE-2026-103965)

- [CVE-2026-104004](https://www.cve.org/CVERecord?id=CVE-2026-104004)

- [CVE-2026-104005](https://www.cve.org/CVERecord?id=CVE-2026-104005)

For the latest information about MongoDB security updates, see [MongoDB Security Bulletins](https://www.mongodb.com/resources/products/alerts?tck=docs).

Issues fixed:

- [SERVER-127294](https://jira.mongodb.org/browse/SERVER-127294) Fix race in NetworkInterfaceTest.NumRequestsTimedOutBeforeSentToRemoteMetric

- [SERVER-130431](https://jira.mongodb.org/browse/SERVER-130431) Mark $graphLookup as DiskUseRequirement::kWritesTmpData

- [SERVER-131411](https://jira.mongodb.org/browse/SERVER-131411) Improve bulkWrite

- [SERVER-131412](https://jira.mongodb.org/browse/SERVER-131412) Improve Validation Expression

- [SERVER-131805](https://jira.mongodb.org/browse/SERVER-131805) Recovered cross-database renameCollection participant can drop the target after stepdown

- [SERVER-132946](https://jira.mongodb.org/browse/SERVER-132946) Heap-use-after-free in $\_internalApplyOplogUpdate stage when reading via getMore after aggregate Invocation is destroyed

- [SERVER-134618](https://jira.mongodb.org/browse/SERVER-134618) Fix serialization of constant values in $bucket stage

[All JIRA issues closed in 8.3.13](https://jira.mongodb.org/issues/?jql=project%20in%20\(SERVER%2CTOOLS%2CWT\)%20AND%20resolution%3D%27Fixed%27%20and%20fixversion%3D%278.3.13%27)

[8.3.13 Changelog](https://www.mongodb.com/docs/manual/release-notes/8.3-changelog.md#std-label-8.3.13-changelog)

### 8.3.11 - Sept 11, 2026

This release contains important security and reliability improvements.

**Important:**

MongoDB 8.3.11 contains a fix for:

- [CVE-2026-89099](https://www.cve.org/CVERecord?id=CVE-2026-89099)

For the latest information about MongoDB security updates, see [MongoDB Security Bulletins.](https://www.mongodb.com/resources/products/alerts?tck=docs)

Issues fixed:

- [SERVER-134063](https://jira.mongodb.org/browse/SERVER-134063) Shred collection validator constants during parsing

- [All JIRA issues closed in 8.3.11](https://jira.mongodb.org/issues/?jql=project%20in%20\(SERVER%2CTOOLS%2CWT\)%20AND%20resolution%3D%27Fixed%27%20and%20fixversion%3D%278.3.11%27)

### 8.3.9 - Sept 8, 2026

This release contains important security and reliability improvements.

**Important:**

MongoDB 8.3.9 contains fixes for:

- [CVE-2026-82059](https://www.cve.org/CVERecord?id=CVE-2026-82059)

- [CVE-2026-82058](https://www.cve.org/CVERecord?id=CVE-2026-82058)

- [CVE-2026-82057](https://www.cve.org/CVERecord?id=CVE-2026-82057)

- [CVE-2026-82056](https://www.cve.org/CVERecord?id=CVE-2026-82056)

- [CVE-2026-82055](https://www.cve.org/CVERecord?id=CVE-2026-82055)

- [CVE-2026-82054](https://www.cve.org/CVERecord?id=CVE-2026-82054)

- [CVE-2026-82053](https://www.cve.org/CVERecord?id=CVE-2026-82053)

- [CVE-2026-82076](https://www.cve.org/CVERecord?id=CVE-2026-82076)

- [CVE-2026-82075](https://www.cve.org/CVERecord?id=CVE-2026-82075)

- [CVE-2026-82073](https://www.cve.org/CVERecord?id=CVE-2026-82073)

- [CVE-2026-82071](https://www.cve.org/CVERecord?id=CVE-2026-82071)

- [CVE-2026-82070](https://www.cve.org/CVERecord?id=CVE-2026-82070)

- [CVE-2026-82069](https://www.cve.org/CVERecord?id=CVE-2026-82069)

- [CVE-2026-82068](https://www.cve.org/CVERecord?id=CVE-2026-82068)

- [CVE-2026-82067](https://www.cve.org/CVERecord?id=CVE-2026-82067)

- [CVE-2026-82066](https://www.cve.org/CVERecord?id=CVE-2026-82066)

- [CVE-2026-82065](https://www.cve.org/CVERecord?id=CVE-2026-82065)

- [CVE-2026-82064](https://www.cve.org/CVERecord?id=CVE-2026-82064)

- [CVE-2026-82063](https://www.cve.org/CVERecord?id=CVE-2026-82063)

- [CVE-2026-82062](https://www.cve.org/CVERecord?id=CVE-2026-82062)

- [CVE-2026-82061](https://www.cve.org/CVERecord?id=CVE-2026-82061)

- [CVE-2026-82060](https://www.cve.org/CVERecord?id=CVE-2026-82060)

- [CVE-2026-82052](https://www.cve.org/CVERecord?id=CVE-2026-82052)

For the latest information about MongoDB security updates, see [MongoDB Security Bulletins.](https://www.mongodb.com/resources/products/alerts?tck=docs)

Issues fixed:

- [SERVER-87919](https://jira.mongodb.org/browse/SERVER-87919) Stop taking unstable checkpoints during recovery for restore

- [SERVER-96874](https://jira.mongodb.org/browse/SERVER-96874) Replication recovery can crash due to concurrent shutdown

- [SERVER-125742](https://jira.mongodb.org/browse/SERVER-125742) Remove the graceful exit for kernel version 7.0.14 and above

- [SERVER-132246](https://jira.mongodb.org/browse/SERVER-132246) minWaitForStreamingHelloMillis default breaks spec-compliant drivers

- [SERVER-130571](https://jira.mongodb.org/browse/SERVER-130571) Limit use of $\_internalIndexKey to internal clients only

- [SERVER-130926](https://jira.mongodb.org/browse/SERVER-130926) Usage of strtoll in generateJSONSchemaArraySingleSchemaError can throw std::exception

- [SERVER-130495](https://jira.mongodb.org/browse/SERVER-130495) WiredTigerRecordStore configString allows overriding WiredTiger value\_format

- [SERVER-130306](https://jira.mongodb.org/browse/SERVER-130306) Fix heap-use-after-free in TextMatchExpression

- [SERVER-130202](https://jira.mongodb.org/browse/SERVER-130202) Clean up stale state in GeometryContainer when GeoJSON parsing fails

- [SERVER-130901](https://jira.mongodb.org/browse/SERVER-130901) Limit JSON Pointer path depth to 255 for $jsonSchema.encryptMetadata.keyId

- [SERVER-130785](https://jira.mongodb.org/browse/SERVER-130785) Fix LDAP roles for pooled LDAP connections

- [SERVER-128253](https://jira.mongodb.org/browse/SERVER-128253) Integer overflow in query planner explodeForSort() can trigger mongod denial of service

- [SERVER-132650](https://jira.mongodb.org/browse/SERVER-132650) Make `mongos` use the configurable minimum timeout for pre-auth streamable hello

- [SERVER-132125](https://jira.mongodb.org/browse/SERVER-132125) Ban $\_isHybridSearch at top-level agg command requests

- [SERVER-131860](https://jira.mongodb.org/browse/SERVER-131860) Improve wiredtiger config string handling

- [SERVER-131423](https://jira.mongodb.org/browse/SERVER-131423) Apply consistent redaction in reportState()

- [SERVER-132835](https://jira.mongodb.org/browse/SERVER-132835) Query shape for $search leaks raw query literals on mongos

- [SERVER-131326](https://jira.mongodb.org/browse/SERVER-131326) Repeat stmtIds on writes crash the server

- [SERVER-131229](https://jira.mongodb.org/browse/SERVER-131229) enforce case-sensitivity in options validation

- [SERVER-131562](https://jira.mongodb.org/browse/SERVER-131562) Heap memory disclosure via mis-indexed tie-break vectors in the query multi-planner

- [SERVER-131420](https://jira.mongodb.org/browse/SERVER-131420) Reject WiredTiger configString type overrides other than "type=file"

- [SERVER-130759](https://jira.mongodb.org/browse/SERVER-130759) Adjust invariant condition to account for arbiter nodes

- [SERVER-131870](https://jira.mongodb.org/browse/SERVER-131870) Fix heap use-after-free

- [SERVER-131138](https://jira.mongodb.org/browse/SERVER-131138) Disallow user-initiated applyOps on containers

- [SERVER-130907](https://jira.mongodb.org/browse/SERVER-130907) Use after free possible with memory tracking and two cursors

- [SERVER-131202](https://jira.mongodb.org/browse/SERVER-131202) Fix aggregation pipeline updateLookup with dollar-prefixed fields

- [SERVER-127985](https://jira.mongodb.org/browse/SERVER-127985) Reject regex matches that do not lay on UTF-8 character boundaries

- [All JIRA issues closed in 8.3.9](https://jira.mongodb.org/issues/?jql=project%20in%20\(SERVER%2CTOOLS%2CWT\)%20AND%20resolution%3D%27Fixed%27%20and%20fixversion%3D%278.3.9%27)

- [8.3.9 Changelog](https://www.mongodb.com/docs/manual/release-notes/8.3-changelog.md#std-label-8.3.9-changelog)

### 8.3.8 - Aug 11, 2026

This release contains important security and reliability improvements.

**Important:**

MongoDB 8.3.8 contains fixes for:

- [CVE-2026-18687](https://www.cve.org/CVERecord?id=CVE-2026-18687)

- [CVE-2026-18688](https://www.cve.org/CVERecord?id=CVE-2026-18688)

- [CVE-2026-18690](https://www.cve.org/CVERecord?id=CVE-2026-18690)

- [CVE-2026-18691](https://www.cve.org/CVERecord?id=CVE-2026-18691)

- [CVE-2026-18692](https://www.cve.org/CVERecord?id=CVE-2026-18692)

- [CVE-2026-18693](https://www.cve.org/CVERecord?id=CVE-2026-18693)

- [CVE-2026-18694](https://www.cve.org/CVERecord?id=CVE-2026-18694)

- [CVE-2026-18695](https://www.cve.org/CVERecord?id=CVE-2026-18695)

- [CVE-2026-18696](https://www.cve.org/CVERecord?id=CVE-2026-18696)

- [CVE-2026-18697](https://www.cve.org/CVERecord?id=CVE-2026-18697)

- [CVE-2026-18698](https://www.cve.org/CVERecord?id=CVE-2026-18698)

- [CVE-2026-18699](https://www.cve.org/CVERecord?id=CVE-2026-18699)

- [CVE-2026-18700](https://www.cve.org/CVERecord?id=CVE-2026-18700)

- [CVE-2026-18701](https://www.cve.org/CVERecord?id=CVE-2026-18701)

- [CVE-2026-18702](https://www.cve.org/CVERecord?id=CVE-2026-18702)

- [CVE-2026-18703](https://www.cve.org/CVERecord?id=CVE-2026-18703)

- [CVE-2026-18704](https://www.cve.org/CVERecord?id=CVE-2026-18704)

- [CVE-2026-18705](https://www.cve.org/CVERecord?id=CVE-2026-18705)

- [CVE-2026-18706](https://www.cve.org/CVERecord?id=CVE-2026-18706)

- [CVE-2026-18707](https://www.cve.org/CVERecord?id=CVE-2026-18707)

- [CVE-2026-18708](https://www.cve.org/CVERecord?id=CVE-2026-18708)

- [CVE-2026-18709](https://www.cve.org/CVERecord?id=CVE-2026-18709)

- [CVE-2026-18711](https://www.cve.org/CVERecord?id=CVE-2026-18711)

- [CVE-2026-18712](https://www.cve.org/CVERecord?id=CVE-2026-18712)

For the latest information about MongoDB security updates, see [MongoDB Security Bulletins](https://www.mongodb.com/resources/products/alerts?tck=docs).

Issues fixed:

- [SERVER-123864](https://jira.mongodb.org/browse/SERVER-123864) Improve $lookup local-read fallback in sharded\_agg\_helpers

- [SERVER-127863](https://jira.mongodb.org/browse/SERVER-127863) Enforce `authenticationMechanisms` on the SASL MONGODB-X509 path

- [SERVER-128392](https://jira.mongodb.org/browse/SERVER-128392) Duplicate insert into a clustered collection whose \_id contains a Decimal128 throws a KeyString format error

- [SERVER-128482](https://jira.mongodb.org/browse/SERVER-128482) Disallow `$documents` with `$_resumeAfter` or `$_startAt`

- [SERVER-128551](https://jira.mongodb.org/browse/SERVER-128551) Fix initialization order of `$unwind` in `$graphLookup`

- [SERVER-129460](https://jira.mongodb.org/browse/SERVER-129460) Ensure valid `jsonSchema` in time series updates

- [SERVER-129617](https://jira.mongodb.org/browse/SERVER-129617) Better validation for `NaN` in `$percentile` and `$median`

- [SERVER-129618](https://jira.mongodb.org/browse/SERVER-129618) Disallow user-provided `$vectorSearch` arguments from overriding internally generated options

- [SERVER-129887](https://jira.mongodb.org/browse/SERVER-129887) Fix a collision in bucket OIDs during bucket allocation that leaves a dangling pointer to the bucket

- [SERVER-129936](https://jira.mongodb.org/browse/SERVER-129936) Tighten validation of `$idLookup` internal fields

- [SERVER-129994](https://jira.mongodb.org/browse/SERVER-129994) Fix a malformed `FlatBSON` store caused by inserting duplicate field names

- [SERVER-130110](https://jira.mongodb.org/browse/SERVER-130110) Gate the internal-only `_internalSetObjToThis` field of `$function` behind an internal-client check

- [SERVER-130111](https://jira.mongodb.org/browse/SERVER-130111) Prevent invalid type conversion during match expression serialization

- [SERVER-130117](https://jira.mongodb.org/browse/SERVER-130117) Fix a heap use-after-free in collection validation for big polygons

- [SERVER-130139](https://jira.mongodb.org/browse/SERVER-130139) Account for the `o`-versus-UUID consistency check

- [SERVER-130167](https://jira.mongodb.org/browse/SERVER-130167) Stop the JavaScript scope from constructing delete requests by concatenating unsanitized `_id` fields

- [SERVER-130188](https://jira.mongodb.org/browse/SERVER-130188) Exclude partial indexes from `2dsphere` geometry skip-validation

- [SERVER-130198](https://jira.mongodb.org/browse/SERVER-130198) Increase the authorization requirement for `slowms` and `sampleRate` in the `profile` command

- [SERVER-130247](https://jira.mongodb.org/browse/SERVER-130247) Treat `Decimal128` values as potentially invalid when preparing to yield or detach a cursor

- [SERVER-130264](https://jira.mongodb.org/browse/SERVER-130264) Apply the intra-cluster SASL mechanism allowlist in egress connection setup

- [SERVER-130266](https://jira.mongodb.org/browse/SERVER-130266) Prohibit `$text` and `$near` in `$_internalSchemaCond`

- [SERVER-130481](https://jira.mongodb.org/browse/SERVER-130481) Allow the symbol type in `CommandHelpers::parseNsFromCommand`

- [SERVER-130544](https://jira.mongodb.org/browse/SERVER-130544) Enforce the internal user for `commitTransaction` and `abortTransaction` on prepared transactions

- [SERVER-130628](https://jira.mongodb.org/browse/SERVER-130628) Prevent excessive range padding insertions into the ESC during FLE2 compaction

- [SERVER-130633](https://jira.mongodb.org/browse/SERVER-130633) Authorize `compactStructuredEncryptionData` and `cleanupStructuredEncryptionData` at database scope

- [All JIRA issues closed in 8.3.8](https://jira.mongodb.org/issues/?jql=project%20in%20\(SERVER%2CTOOLS%2CWT\)%20AND%20resolution%3D%27Fixed%27%20and%20fixversion%3D%278.3.8%27)

- [8.3.8 Changelog](https://www.mongodb.com/docs/manual/release-notes/8.3-changelog.md#std-label-8.3.8-changelog)

### 8.3.7 - July 22, 2026

This release contains important security and reliability improvements.

**Important:**

MongoDB 8.3.7 contains fixes for:

- [CVE-2026-9737](https://www.cve.org/CVERecord?id=CVE-2026-9737)

- [CVE-2026-13055](https://www.cve.org/CVERecord?id=CVE-2026-13055)

- [CVE-2026-13056](https://www.cve.org/CVERecord?id=CVE-2026-13056)

- [CVE-2026-13057](https://www.cve.org/CVERecord?id=CVE-2026-13057)

- [CVE-2026-13058](https://www.cve.org/CVERecord?id=CVE-2026-13058)

- [CVE-2026-13059](https://www.cve.org/CVERecord?id=CVE-2026-13059)

- [CVE-2026-13060](https://www.cve.org/CVERecord?id=CVE-2026-13060)

- [CVE-2026-13061](https://www.cve.org/CVERecord?id=CVE-2026-13061)

- [CVE-2026-13062](https://www.cve.org/CVERecord?id=CVE-2026-13062)

- [CVE-2026-13063](https://www.cve.org/CVERecord?id=CVE-2026-13063)

- [CVE-2026-13064](https://www.cve.org/CVERecord?id=CVE-2026-13064)

- [CVE-2026-13065](https://www.cve.org/CVERecord?id=CVE-2026-13065)

- [CVE-2026-13066](https://www.cve.org/CVERecord?id=CVE-2026-13066)

- [CVE-2026-13067](https://www.cve.org/CVERecord?id=CVE-2026-13067)

- [CVE-2026-13068](https://www.cve.org/CVERecord?id=CVE-2026-13068)

- [CVE-2026-13069](https://www.cve.org/CVERecord?id=CVE-2026-13069)

- [CVE-2026-13070](https://www.cve.org/CVERecord?id=CVE-2026-13070)

- [CVE-2026-13071](https://www.cve.org/CVERecord?id=CVE-2026-13071)

- [CVE-2026-13072](https://www.cve.org/CVERecord?id=CVE-2026-13072)

- [CVE-2026-13074](https://www.cve.org/CVERecord?id=CVE-2026-13074)

- [CVE-2026-13075](https://www.cve.org/CVERecord?id=CVE-2026-13075)

- [CVE-2026-13076](https://www.cve.org/CVERecord?id=CVE-2026-13076)

- [CVE-2026-13077](https://www.cve.org/CVERecord?id=CVE-2026-13077)

- [CVE-2026-13078](https://www.cve.org/CVERecord?id=CVE-2026-13078)

For the latest information about MongoDB security updates, see [MongoDB Security Bulletins](https://www.mongodb.com/resources/products/alerts?tck=docs).

Issues fixed:

- [SERVER-123081](https://jira.mongodb.org/browse/SERVER-123081) Handle compound wildcard index spec in `$_internalIndexKey`

- [SERVER-124355](https://jira.mongodb.org/browse/SERVER-124355) Improve memory checks for array expressions to prevent huge in-memory arrays from `$concatArrays` combined with `$range`

- [SERVER-125872](https://jira.mongodb.org/browse/SERVER-125872) Fix exponential hashing of query solutions for `InternalSchema*MatchExpression` nodes

- [SERVER-126247](https://jira.mongodb.org/browse/SERVER-126247) Properly validate `$search.mergingPipeline` as an internal-only field

- [SERVER-127280](https://jira.mongodb.org/browse/SERVER-127280) Reject expression-based `sortBy` in the `$linearFill` parser

- [SERVER-127357](https://jira.mongodb.org/browse/SERVER-127357) Check for duplicate `from` fields in `DocumentSourceGraphLookup::createFromBson()`

- [SERVER-127566](https://jira.mongodb.org/browse/SERVER-127566) Limit the contention factor that can be used for FLE2 fields

- [SERVER-127661](https://jira.mongodb.org/browse/SERVER-127661) Require `autocommit` when `startOrContinueTransaction` is specified

- [SERVER-127689](https://jira.mongodb.org/browse/SERVER-127689) Only allow internal clients to specify `$_internalPredicate`

- [SERVER-127694](https://jira.mongodb.org/browse/SERVER-127694) Add type checking for `DBPointer`

- [SERVER-127737](https://jira.mongodb.org/browse/SERVER-127737) Limit the number of metadata blocks allowed in a `FLE2IndexedTextEncryptedValue`

- [SERVER-127831](https://jira.mongodb.org/browse/SERVER-127831) Forbid external users from running FLE2 commands with `crudProcessed` set to true

- [SERVER-128198](https://jira.mongodb.org/browse/SERVER-128198) Fix `mongos` `killCursors` to check authorization against the cursor's namespace instead of the request namespace

- [SERVER-128316](https://jira.mongodb.org/browse/SERVER-128316) Bound the maximum typo suggestion in hybrid search

- [SERVER-128341](https://jira.mongodb.org/browse/SERVER-128341) Fix a server crash caused by sorting on a `$meta` expression

- [SERVER-129103](https://jira.mongodb.org/browse/SERVER-129103) Restrict target BinData subtypes in $convert and $constant/$literal

- [SERVER-128362](https://jira.mongodb.org/browse/SERVER-128362) Add a null check on the return value in `ocspClientCallback`

- [SERVER-128387](https://jira.mongodb.org/browse/SERVER-128387) Remove auth role parsing from SSL TLVs in the proxy protocol parser

- [SERVER-128433](https://jira.mongodb.org/browse/SERVER-128433) Prevent external clients from setting `runtimeConstants.userRoles`

- [SERVER-128473](https://jira.mongodb.org/browse/SERVER-128473) Fix a use-after-free in `$function` caused by a missing `advanceGeneration()` call on retained BSON arguments

- [SERVER-128494](https://jira.mongodb.org/browse/SERVER-128494) Validate external BSON in `MultiBsonStreamCursor`

- [SERVER-128517](https://jira.mongodb.org/browse/SERVER-128517) Add a configurable minimum timeout for pre-auth streamable `hello` to prevent a hot loop from very small `maxAwaitTimeMS` values

- [SERVER-128584](https://jira.mongodb.org/browse/SERVER-128584) Add memory checks for `$convert` from BinData to an array

- [SERVER-128832](https://jira.mongodb.org/browse/SERVER-128832) Guard `ImplScope` `ModuleLoader` creation

- [SERVER-79980](https://jira.mongodb.org/browse/SERVER-79980) Support TLS 1.3 for Windows

- [SERVER-83322](https://jira.mongodb.org/browse/SERVER-83322) Compound Wildcard Index bounds reverts to \[MinKey, MaxKey] when filter contains fields outside CWI

- [SERVER-108215](https://jira.mongodb.org/browse/SERVER-108215) Impose limits on the number of active multi-document transactions

- [SERVER-127346](https://jira.mongodb.org/browse/SERVER-127346) Make session refresh have kExempt admission priority

- [All JIRA issues closed in 8.3.7](https://jira.mongodb.org/issues/?jql=project%20in%20\(SERVER%2CTOOLS%2CWT\)%20AND%20resolution%3D%27Fixed%27%20and%20fixversion%3D%278.3.7%27)

- [8.3.7 Changelog](https://www.mongodb.com/docs/manual/release-notes/8.3-changelog.md#std-label-8.3.7-changelog)

### 8.3.4 - June 11, 2026

**Important:**

MongoDB 8.3.4 contains a fix for [CVE-2026-11933](https://www.cve.org/CVERecord?id=CVE-2026-11933)

For the latest information about MongoDB security updates, see [MongoDB Security Bulletins](https://www.mongodb.com/resources/products/alerts?tck=docs).

Issues fixed:

- [SERVER-128125](https://jira.mongodb.org/browse/SERVER-128125) Align bsonObjToArray ownership semantics with bsonGetImmutable

- [All JIRA issues closed in 8.3.4](https://jira.mongodb.org/issues/?jql=project%20in%20\(SERVER%2CTOOLS%2CWT\)%20AND%20resolution%3D%27Fixed%27%20and%20fixversion%3D%278.3.4%27)

- [8.3.4 Changelog](https://www.mongodb.com/docs/manual/release-notes/8.3-changelog.md#std-label-8.3.4-changelog)

### 8.3.3 - June 9, 2026

**Important:**

MongoDB 8.3.3 contains a fix for:

- [CVE-2026-9735](https://www.cve.org/CVERecord?id=CVE-2026-9735)

- [CVE-2026-9740](https://www.cve.org/CVERecord?id=CVE-2026-9740)

- [CVE-2026-9741](https://www.cve.org/CVERecord?id=CVE-2026-9741)

- [CVE-2026-9742](https://www.cve.org/CVERecord?id=CVE-2026-9742)

- [CVE-2026-9746](https://www.cve.org/CVERecord?id=CVE-2026-9746)

- [CVE-2026-9747](https://www.cve.org/CVERecord?id=CVE-2026-9747)

- [CVE-2026-9748](https://www.cve.org/CVERecord?id=CVE-2026-9748)

- [CVE-2026-9749](https://www.cve.org/CVERecord?id=CVE-2026-9749)

- [CVE-2026-9750](https://www.cve.org/CVERecord?id=CVE-2026-9750)

- [CVE-2026-9751](https://www.cve.org/CVERecord?id=CVE-2026-9751)

- [CVE-2026-9752](https://www.cve.org/CVERecord?id=CVE-2026-9752)

- [CVE-2026-9753](https://www.cve.org/CVERecord?id=CVE-2026-9753)

For the latest information about MongoDB security updates, see [MongoDB Security Bulletins](https://www.mongodb.com/resources/products/alerts?tck=docs).

#### Cost-Based Ranker:

Starting in MongoDB 8.3, multi-planning with a CBR backup is the default plan selection mechanism for eligible queries. For a short trial period, the multi-planner attempts to find a plan capable of returning a result set within this short timeframe. If the attempt is unsuccessful, MongoDB applies a set of rules to determine whether the multi-planner should continue or if CBR should evaluate each node in the plan to determine the optimal plan.

- [SERVER-118434](https://jira.mongodb.org/browse/SERVER-118434) Makes the CBR eligible for use during query planning

- [SERVER-115402](https://jira.mongodb.org/browse/SERVER-115402) Adds `explain` output to the CBR

- [SERVER-120369](https://jira.mongodb.org/browse/SERVER-120369) Adds [`serverStatus`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-dbcommand-dbcmd.serverStatus) metrics for the CBR

- [SERVER-117199](https://jira.mongodb.org/browse/SERVER-117199) Adds [`$queryStats`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/querystats.md#mongodb-pipeline-pipe.-queryStats) metrics for the CBR

For more information, see [Query Plan Options.](https://www.mongodb.com/docs/manual/core/query-plans.md#std-label-query-plan-options)

#### Issues fixed:

- [SERVER-115250](https://jira.mongodb.org/browse/SERVER-115250) Pause JWKSetRefreshJob during quiesce time

- [SERVER-121822](https://jira.mongodb.org/browse/SERVER-121822) Clustered collections do not correctly filter out results with `$lt` on `_id`

- [SERVER-125887](https://jira.mongodb.org/browse/SERVER-125887) Add support for encrypted PEM fules for gRPC egress

- [SERVER-126049](https://jira.mongodb.org/browse/SERVER-126049) MozJS per-scope heap limit check uses process-global GC counter

- [WT-16780](https://jira.mongodb.org/browse/WT-16780) Insufficient error context in `WT_PANIC` checkpoint failures in `__wt_block_checkpoint_resolve`

- [SERVER-126506](https://jira.mongodb.org/browse/SERVER-126506) Remove SASL params from egress logging

- [SERVER-125063](https://jira.mongodb.org/browse/SERVER-125063) Prohibit nesting of BSONColumn inside BSONColumn

- [SERVER-123507](https://jira.mongodb.org/browse/SERVER-123507) Encrypted predicates inside a `$vectorSearch` prefilter should get replaced with encryption placeholders

- [SERVER-124183](https://jira.mongodb.org/browse/SERVER-124183) Limit scope of authenticate

- [SERVER-124190](https://jira.mongodb.org/browse/SERVER-124190) Forbid aggregate `exchange` field from non-internal clients

- [SERVER-123918](https://jira.mongodb.org/browse/SERVER-123918) Validate `runtimeConstants.userRoles` in IDL

- [SERVER-123951](https://jira.mongodb.org/browse/SERVER-123951) `$_internalConvertBucketIndexStats` should not return PauseExecution on failed index conversion

- [SERVER-124031](https://jira.mongodb.org/browse/SERVER-124031) Ensure `Exchange::getTargetConsumer` correctly handles MaxKey

- [SERVER-123633](https://jira.mongodb.org/browse/SERVER-123633) Fix handling of user $-prefixed fields colliding with internal metadata

- [SERVER-123370](https://jira.mongodb.org/browse/SERVER-123370) LDAP query password is logged when set through setParameter

- [SERVER-123440](https://jira.mongodb.org/browse/SERVER-123440) GeometryCollection with strict-winding polygon causes 2dsphere index key generation crash

- [SERVER-124959](https://jira.mongodb.org/browse/SERVER-124959) Validate doc diff array bounds and `$_internalApplyOplogUpdate` BSON

- [All JIRA issues closed in 8.3.3](https://jira.mongodb.org/browse/SERVER-126391?jql=project%20%3D%20SERVER%20AND%20resolution%3D%27Fixed%27%20AND%20fixVersion%20%3D%208.3.3)

- [8.3.3 Changelog](https://www.mongodb.com/docs/manual/release-notes/8.3-changelog.md#std-label-8.3.3-changelog)

### 8.3.2 - May 12, 2026

**Important:**

MongoDB 8.3.2 contains a fix for [CVE-2026-8053](https://www.cve.org/CVERecord?id=CVE-2026-8053)

For the latest information about MongoDB security updates, see [MongoDB Security Bulletins](https://www.mongodb.com/resources/products/alerts?tck=docs).

Issues fixed:

- [SERVER-126021](https://jira.mongodb.org/browse/SERVER-126021) Undefined behavior when inserting data with duplicate field names into timeseries collections

- [All JIRA issues closed in 8.3.2](https://jira.mongodb.org/issues/?jql=project%20in%20\(SERVER%2CTOOLS%2CWT\)%20AND%20resolution%3D%27Fixed%27%20and%20fixversion%3D%278.3.2%27)

- [8.3.2 Changelog](https://www.mongodb.com/docs/manual/release-notes/8.3-changelog.md#std-label-8.3.2-changelog)

### 8.3.1 - May 4, 2026

**Important:**

MongoDB 8.3.1 contains a fix for:

- [CVE-2026-8199](https://www.cve.org/CVERecord?id=CVE-2026-8199)

- [CVE-2026-8200](https://www.cve.org/CVERecord?id=CVE-2026-8200)

- [CVE-2026-8201](https://www.cve.org/CVERecord?id=CVE-2026-8201)

- [CVE-2026-8202](https://www.cve.org/CVERecord?id=CVE-2026-8202)

- [CVE-2026-8336](https://www.cve.org/CVERecord?id=CVE-2026-8336)

For the latest information about MongoDB security updates, see [MongoDB Security Bulletins](https://www.mongodb.com/resources/products/alerts?tck=docs).

Issues fixed:

- [SERVER-121610](https://jira.mongodb.org/browse/SERVER-121610) Ensure cached `emit()` calls are no-op

- [SERVER-121895](https://jira.mongodb.org/browse/SERVER-121895) Improve redaction of validation errors

- [SERVER-124974](https://jira.mongodb.org/browse/SERVER-124974) Ensure memory lifetime during `$match` pushdown analysis

- [All JIRA issues closed in 8.3.1](https://jira.mongodb.org/issues/?jql=project%20in%20\(SERVER%2CTOOLS%2CWT\)%20AND%20resolution%3D%27Fixed%27%20and%20fixversion%3D%278.3.1%27)

- [8.3.1 Changelog](https://www.mongodb.com/docs/manual/release-notes/8.3-changelog.md#std-label-8.3.1-changelog)

### 8.3.0 - May 4, 2026

**Important:**

MongoDB 8.3 includes fixes for [CVE-2025-12893](https://www.cve.org/CVERecord?id=CVE-2025-12893), [CVE-2025-13507](https://www.cve.org/CVERecord?id=CVE-2025-13507), [CVE-2025-14345](https://www.cve.org/CVERecord?id=CVE-2025-14345), and [CVE-2026-8336](https://www.cve.org/CVERecord?id=CVE-2026-8336), [CVE-2026-9754](https://www.cve.org/CVERecord?id=CVE-2026-9754).

For the latest information about MongoDB security updates, see [MongoDB Security Bulletins](https://www.mongodb.com/resources/products/alerts?tck=docs).

## Performance Improvements

MongoDB 8.3 introduces the following performance improvements:

- Up to 40% improved throughput and latency, and reduced CPU usage.

- Faster [`$merge`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/merge.md#mongodb-pipeline-pipe.-merge) operations where no more than 70% of the operations are updates.

- Improved tail latency for queries after approximately 10,000 operations, when cost-based ranking takes over query multi-planning.

**Note:**

The amount of performance improvement can vary depending on the configuration of your workloads and database instances.

## General Changes

### $scoreFusion Aggregation Stage is Generally Available

Starting in MongoDB 8.3, the [`$scoreFusion`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/scorefusion.md#mongodb-pipeline-pipe.-scoreFusion) aggregation stage is generally available (GA). (The related [`$rankFusion`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/rankfusion.md#mongodb-pipeline-pipe.-rankFusion) aggregation stage is generally available starting in MongoDB 8.0.)

### Accessing Array Element Indexes in $map, $filter, and $reduce

MongoDB 8.3 improves access to array element indexes in [`$map`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/map.md#mongodb-expression-exp.-map), [`$filter`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/filter.md#mongodb-expression-exp.-filter), and [`$reduce`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/reduce.md#mongodb-expression-exp.-reduce) aggregation expressions. You can use the new `arrayIndexAs` field to set a variable to store the index of an array element. You can also use the new [`$$IDX`](https://www.mongodb.com/docs/manual/reference/aggregation-variables.md#mongodb-variable-variable.IDX) aggregation system variable to access the index of the current array element if you omit `arrayIndexAs`.

### FTDC Statistics

Starting in MongoDB 8.3, [Full Time Diagnostic Data Capture](https://www.mongodb.com/docs/manual/administration/full-time-diagnostic-data-capture.md#std-label-self-managed-ftdc) (FTDC) collects [`connPoolStats`](https://www.mongodb.com/docs/manual/reference/command/connpoolstats.md#mongodb-dbcommand-dbcmd.connPoolStats) metrics for [`mongod`](https://www.mongodb.com/docs/manual/reference/program/mongod.md#mongodb-binary-bin.mongod) processes.

### serverStatus Output

[`serverStatus`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-dbcommand-dbcmd.serverStatus) includes the following new fields in its output:

- `aggregate.withExtension` sub-field in `metrics.commands.aggregate`, tracking success and failure counts

- [`shardingStatistics.databaseCriticalSectionStatistics`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.shardingStatistics.databaseCriticalSectionStatistics)

- [`shardingStatistics.collectionCriticalSectionStatistics`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.shardingStatistics.collectionCriticalSectionStatistics)

- [`shardingStatistics.databaseVersionUpdateCounters`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.shardingStatistics.databaseVersionUpdateCounters)

- [`metrics.query.cbr`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.query.cbr)

- [`metrics.query.cbr.choseWinningPlan`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.query.cbr.choseWinningPlan)

- [`metrics.query.cbr.count`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.query.cbr.count)

- [`metrics.query.cbr.histograms`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.query.cbr.histograms)

- [`metrics.query.cbr.histograms.micros`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.query.cbr.histograms.micros)

- [`metrics.query.cbr.histograms.numPlans`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.query.cbr.histograms.numPlans)

- [`metrics.query.cbr.histograms.samplingMicros`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.query.cbr.histograms.samplingMicros)

- [`metrics.query.cbr.micros`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.query.cbr.micros)

- [`metrics.query.cbr.numPlans`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.query.cbr.numPlans)

- [`metrics.query.cbr.numPlansFailedCostEstimation`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.query.cbr.numPlansFailedCostEstimation)

- [`metrics.query.cbr.numPlansTiedCostEstimation`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.query.cbr.numPlansTiedCostEstimation)

- [`metrics.query.cbr.samplingMicros`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.query.cbr.samplingMicros)

- [`metrics.ttl.deletedKeys`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.ttl.deletedKeys)

- [`metrics.ttl.durationMicros`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.ttl.durationMicros)

- [`metrics.ttl.examinedDocuments`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.ttl.examinedDocuments)

- [`metrics.ttl.examinedKeys`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.ttl.examinedKeys)

- [`metrics.extension`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.extension)

- [`metrics.extension.totalAggStageExecMicros`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.extension.totalAggStageExecMicros)

- [`metrics.extension.apiCallSuccesses`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.extension.apiCallSuccesses)

- [`metrics.extension.apiCallFailures`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.extension.apiCallFailures)

- [`metrics.extension.vectorSearch`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.extension.vectorSearch)

- [`metrics.extension.vectorSearch.legacyVectorSearchUsed`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.extension.vectorSearch.legacyVectorSearchUsed)

- [`metrics.extension.vectorSearch.extensionVectorSearchUsed`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.extension.vectorSearch.extensionVectorSearchUsed)

- [`metrics.extension.vectorSearch.onViewKickbackRetries`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.extension.vectorSearch.onViewKickbackRetries)

- [`metrics.extension.vectorSearch.inSubpipelineKickbackRetries`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.extension.vectorSearch.inSubpipelineKickbackRetries)

- [`metrics.repl.network.oplogFetcherLagSeconds`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.repl.network.oplogFetcherLagSeconds)

- [`metrics.repl.network.oplogGetMoresProcessed`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.metrics.repl.network.oplogGetMoresProcessed)

- [`queues.execution.admissions`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.queues.execution.admissions)

- [`queues.execution.backgroundTasksDeprioritization`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.queues.execution.backgroundTasksDeprioritization)

- [`queues.execution.deprioritizationGate`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.queues.execution.deprioritizationGate)

- [`queues.execution.heuristicDeprioritization`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.queues.execution.heuristicDeprioritization)

- [`queues.execution.heuristicDeprioritizationThreshold`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.queues.execution.heuristicDeprioritizationThreshold)

- [`queues.execution.totalDeprioritizations`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.queues.execution.totalDeprioritizations)

- [`queues.execution.usesPrioritization`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.queues.execution.usesPrioritization)

- [`queues.execution.usesThroughputProbing`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.queues.execution.usesThroughputProbing)

- [`queues.execution.nonDeprioritizable`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.queues.execution.nonDeprioritizable)

- [`queues.execution.deprioritizable`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.queues.execution.deprioritizable)

- [`queues.execution.read.normalPriority.totalDelinquentAcquisitions`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.normalPriority.totalDelinquentAcquisitions)

- [`queues.execution.read.normalPriority.totalAcquisitionDelinquencyMillis`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.normalPriority.totalAcquisitionDelinquencyMillis)

- [`queues.execution.read.normalPriority.maxAcquisitionDelinquencyMillis`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.normalPriority.maxAcquisitionDelinquencyMillis)

- [`queues.execution.read.lowPriority`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.lowPriority)

MongoDB 8.3 removes the `service` field in the [`serverStatus`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-dbcommand-dbcmd.serverStatus) output.

Starting in MongoDB 8.3, you can exclude all optional fields from the [`serverStatus`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-dbcommand-dbcmd.serverStatus) output by specifying `none: 1`. After you exclude all optional fields, you can then specify the fields you want to include.

For details, see [Exclude All Optional Fields.](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#std-label-serverstatus-excl-fields)

You can also optionally specify `lockContentionMetrics: 1` in the [`serverStatus`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-dbcommand-dbcmd.serverStatus) command to include [lockContentionMetrics](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#std-label-server-status-lockContentionMetrics) in the output.

### String Conversion Enhancements

Starting in MongoDB 8.3, [`$toString`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/tostring.md#mongodb-expression-exp.-toString) can convert additional BSON types to strings, including objects, arrays, regular expressions, MaxKeys, MinKeys, and timestamps. For details, see [`$toString`.](https://www.mongodb.com/docs/manual/reference/operator/aggregation/tostring.md#mongodb-expression-exp.-toString)

MongoDB 8.3 introduces the optional `base` argument for [`$convert`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/convert.md#mongodb-expression-exp.-convert) to convert between string and numeric values using bases `2`, `8`, `10`, and `16`. For details, see [`$convert`.](https://www.mongodb.com/docs/manual/reference/operator/aggregation/convert.md#mongodb-expression-exp.-convert)

### Array Conversion Enhancements

Starting in MongoDB 8.3, you can convert strings that represent arrays using [`$convert`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/convert.md#mongodb-expression-exp.-convert) or the shorthand expression [`$toArray`.](https://www.mongodb.com/docs/manual/reference/operator/aggregation/toarray.md#mongodb-expression-exp.-toArray)

You can also convert between `binData` and arrays of numeric values. For details, see [Convert binData to Array](https://www.mongodb.com/docs/manual/reference/operator/aggregation/convert.md#std-label-convert-bindata-to-array) and [Convert an Array of Numeric Values to binData.](https://www.mongodb.com/docs/manual/reference/operator/aggregation/convert.md#std-label-convert-array-of-numeric-values-to-bindata)

### Object Conversion Enhancements

Starting in MongoDB 8.3, you can convert strings that represent objects using [`$convert`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/convert.md#mongodb-expression-exp.-convert) or the shorthand expression [`$toObject`.](https://www.mongodb.com/docs/manual/reference/operator/aggregation/toobject.md#mongodb-expression-exp.-toObject)

### Geospatial Index Generation

Starting in MongoDB 8.3, if a document contains both GeoJSON and legacy numeric coordinate fields, geospatial index generation prioritizes GeoJSON coordinates.

If your documents contain legacy numeric coordinate values that precede GeoJSON coordinates and existing indexes rely on that behavior, you might need to rebuild your geospatial indexes.

This change may require you to rebuild geospatial indexes if your documents contain legacy numeric coordinate values that precede GeoJSON coordinates and existing indexes rely on that behavior. Review geospatial queries to confirm they return expected results.

### Remove Shard Changes

Starting in MongoDB 8.3, the [`removeShard`](https://www.mongodb.com/docs/manual/reference/command/removeshard.md#mongodb-dbcommand-dbcmd.removeShard) command is deprecated. This release introduces four new commands to replace `removeShard` and provide granular control over the shard draining and removal process.

- [`startShardDraining`](https://www.mongodb.com/docs/manual/reference/command/startsharddraining.md#mongodb-dbcommand-dbcmd.startShardDraining)

- [`stopShardDraining`](https://www.mongodb.com/docs/manual/reference/command/stopsharddraining.md#mongodb-dbcommand-dbcmd.stopShardDraining)

- [`shardDrainingStatus`](https://www.mongodb.com/docs/manual/reference/command/sharddrainingstatus.md#mongodb-dbcommand-dbcmd.shardDrainingStatus)

- [`commitShardRemoval`](https://www.mongodb.com/docs/manual/reference/command/commitshardremoval.md#mongodb-dbcommand-dbcmd.commitShardRemoval)

MongoDB provides four additional commands to transition from an embedded config server to a dedicated config server.

- [`startTransitionToDedicatedConfigServer`](https://www.mongodb.com/docs/manual/reference/command/starttransitiontodedicatedconfigserver.md#mongodb-dbcommand-dbcmd.startTransitionToDedicatedConfigServer)

- [`stopTransitionToDedicatedConfigServer`](https://www.mongodb.com/docs/manual/reference/command/stoptransitiontodedicatedconfigserver.md#mongodb-dbcommand-dbcmd.stopTransitionToDedicatedConfigServer)

- [`getTransitionToDedicatedConfigServerStatus`](https://www.mongodb.com/docs/manual/reference/command/gettransitiontodedicatedconfigserverstatus.md#mongodb-dbcommand-dbcmd.getTransitionToDedicatedConfigServerStatus)

- [`commitTransitionToDedicatedConfigServer`](https://www.mongodb.com/docs/manual/reference/command/committransitiontodedicatedconfigserver.md#mongodb-dbcommand-dbcmd.commitTransitionToDedicatedConfigServer)

### PreAuth Connection Limit Parameters

MongoDB 8.3 adds three new server parameters that limit the resource consumption of pre-auth connections:

- [`capMemoryConsumptionForPreAuthBuffers`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.capMemoryConsumptionForPreAuthBuffers)

- [`messageSizeErrorRateSec`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.messageSizeErrorRateSec)

- [`preAuthMaximumMessageSizeBytes`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.preAuthMaximumMessageSizeBytes)

### cachePressureQueryPeriodMilliseconds Parameter

MongoDB 8.3 adds the `cachePressureQueryPeriodMilliseconds` parameter which sets the time interval MongoDB waits between checks for storage engine cache pressure. If the storage engine is under cache pressure, MongoDB aborts the oldest transaction. For details, see [`cachePressureQueryPeriodMilliseconds`.](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.cachePressureQueryPeriodMilliseconds)

### diagnosticDataCollectionDirectorySizeMB Parameter

MongoDB 8.3 increases the default value of [`diagnosticDataCollectionDirectorySizeMB`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.diagnosticDataCollectionDirectorySizeMB) from `200` to `500` MiB.

### overloadAwareServerSelectionEnabled Parameter

MongoDB 8.3 adds the [`overloadAwareServerSelectionEnabled`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.overloadAwareServerSelectionEnabled) parameter, which controls whether retries that target other servers in the cluster avoid members that recently returned an error labeled `SystemOverloadedError`. You can enable this parameter to opt in to overload-aware retargeting.

### ingressRequestRateLimiterApplicationExemptions Parameter

Starting in MongoDB 8.3, the `ingressRequestRateLimiterApplicationExemptions` parameter lets you specify applications to exempt from ingress request rate limiting. For details, see [`ingressRequestRateLimiterApplicationExemptions`.](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.ingressRequestRateLimiterApplicationExemptions)

### Database Profiler Parameters and Metrics

MongoDB 8.3 adds two parameters that let you control the impact that the [Database Profiler](https://www.mongodb.com/docs/manual/tutorial/manage-the-database-profiler.md#std-label-database-profiler) has on query performance:

- [`internalQueryGlobalProfilingLockDeadlineMs`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.internalQueryGlobalProfilingLockDeadlineMs)

- [`internalProfilingMaxAbandonedWritesPerSecondPerDb`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.internalProfilingMaxAbandonedWritesPerSecondPerDb)

MongoDB 8.3 also adds two related `serverStatus` metrics:

- [`profiler.totalAbandonedWrites`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.profiler.totalAbandonedWrites)

- [`profiler.dbsPastThreshold`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.profiler.dbsPastThreshold)

### Retry Parameters

MongoDB 8.3 adds parameters to configure how internal server-side clients (between [`mongos`](https://www.mongodb.com/docs/manual/reference/program/mongos.md#std-program-mongos) and [`mongod`](https://www.mongodb.com/docs/manual/reference/program/mongod.md#std-program-mongod)) back off when retrying operations that fail due to overload.

- [`defaultClientBaseBackoffMillis`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.defaultClientBaseBackoffMillis)

- [`defaultClientMaxBackoffMillis`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.defaultClientMaxBackoffMillis)

- [`defaultClientRetryAttempts`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.defaultClientRetryAttempts)

- [`shardRetryTokenBucketCapacity`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.shardRetryTokenBucketCapacity)

- [`shardRetryTokenReturnRate`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.shardRetryTokenReturnRate)

### BSONObjectTooLarge Code for Upsert Errors

Starting in 8.3, upsert operations that produce a [BSON object](https://www.mongodb.com/docs/manual/reference/bson-types.md#std-label-bson-types) that is too large return the [`10334`](https://www.mongodb.com/docs/manual/reference/error-codes.md#mongodb-error-10334) `BSONObjectTooLarge` error code. In earlier versions, upsert operations that produce a BSON object that is too large return the `17419` or `17420` error codes.

### validate Command Updates

Starting in 8.3, MongoDB no longer automatically enables the `checkBSONConformance` field in the [`db.collection.validate()`](https://www.mongodb.com/docs/manual/reference/method/db.collection.validate.md#mongodb-method-db.collection.validate) method when `full` is `true`. Additionally, the `db.collection.validate()` method now checks to ensure a collection doesn't have any documents that exceed 16 MB.

### New Expression $subtype

MongoDB 8.3 introduces a new [`$subtype`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/subtype.md#mongodb-expression-exp.-subtype) expression to extract the subtype of binary data objects.

### New Expressions for Extended JSON Conversion

MongoDB 8.3 introduces new aggregation expressions for converting between BSON and Extended JSON (EJSON) format:

- [`$serializeEJSON`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/serializeejson.md#mongodb-expression-exp.-serializeEJSON) - Converts BSON values to Extended JSON format with type wrappers. Supports both Canonical and Relaxed Extended JSON formats.

- [`$deserializeEJSON`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/deserializeejson.md#mongodb-expression-exp.-deserializeEJSON) - Converts Extended JSON format back to native BSON values.

These expressions can be combined with [`$convert`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/convert.md#mongodb-expression-exp.-convert) to parse JSON strings, transform Extended JSON values into native BSON values, and convert back to JSON format.

### New Expression $createObjectId

Starting in MongoDB 8.3, you can use [`$createObjectId`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/createobjectid.md#mongodb-expression-exp.-createObjectId) to generate new random [`ObjectId()`](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-ObjectId) values in pipelines and expression-based updates.

### New Hashing Expressions

MongoDB 8.3 introduces two new aggregation expressions for generating hashes from UTF-8 strings or binary data:

- [`$hash`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/hash.md#mongodb-expression-exp.-hash) - Generates a [`BinData`](https://www.mongodb.com/docs/manual/reference/mongodb-extended-json.md#mongodb-bsontype-Binary) hash value from a UTF-8 string or binary data using MD5, SHA-256, or XXH64.

- [`$hexHash`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/hexhash.md#mongodb-expression-exp.-hexHash) - Generates an uppercase hexadecimal string hash from a UTF-8 string or binary data using MD5, SHA-256, or XXH64.

### New $meta Keyword

MongoDB 8.3 introduces a new `"searchRootDocumentId"` keyword for the [`$meta`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/meta.md#mongodb-expression-exp.-meta) expression. You can use this keyword to return the `_id` value of the root document for embedded documents in the [`$search`](https://www.mongodb.com/docs/search/query/aggregation-stages/search.md#mongodb-pipeline-pipe.-search) result set. To learn more, see [searchRootDocumentId.](https://www.mongodb.com/docs/search/query/return-scope.md#std-label-fts-return-scope)

### Pre-Epoch Dates

Starting in MongoDB 8.3, if `unit` is not `"millisecond"` in [`$dateAdd`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/dateadd.md#mongodb-expression-exp.-dateAdd) or [`$dateSubtract`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/datesubtract.md#mongodb-expression-exp.-dateSubtract) and the input date is before `ISODate("1970-01-01T00:00:00Z")`, the result will be one second greater than in previous versions of MongoDB. This also affects the results of aggregations that perform time-based calculations like [`$setWindowFields`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/setwindowfields.md#mongodb-pipeline-pipe.-setWindowFields) and [`$densify`.](https://www.mongodb.com/docs/manual/reference/operator/aggregation/densify.md#mongodb-pipeline-pipe.-densify)

### Geospatial Index Generation

MongoDB 8.3, continues the behavior introduced in MongoDB 8.2. If a document contains both GeoJSON and legacy numeric coordinate fields, geospatial index generation prioritizes GeoJSON coordinates.

If your documents contain legacy numeric coordinate values that precede GeoJSON coordinates and existing indexes rely on that behavior, you might need to rebuild your geospatial indexes.

This change might require you to rebuild geospatial indexes if your documents contain legacy numeric coordinate values that precede GeoJSON coordinates and existing indexes rely on that behavior. Review geospatial queries to confirm they return expected results.

### Subnormal Numbers in $convert Pipelines

Starting in MongoDB 8.3, the server is able to parse the full range of all representable double precision floating point numbers. This includes *subnormal
numbers* where the most significant digit has leading zeroes and the exponent has the least possible value.

For details, see [Subnormal Numbers.](https://www.mongodb.com/docs/manual/reference/operator/aggregation/convert.md#std-label-subnormal-numbers-parse-behavior-convert)

### chars Length Limit for $trim, $ltrim, and $rtrim

Starting in MongoDB 8.3, the length of the string you provide to `chars` is limited to 4096 characters. For details, see [$trim Limitations.](https://www.mongodb.com/docs/manual/reference/operator/aggregation/trim.md#std-label-trim-limitations)

### Window Functions

Starting in MongoDB 8.3, you can use [`$mergeObjects`](https://www.mongodb.com/docs/manual/reference/expression/mergeobjects.md#mongodb-expression-exp.-mergeObjects) in [`$setWindowFields`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/setwindowfields.md#mongodb-pipeline-pipe.-setWindowFields) operations.

### sp.process() limit Option

Starting in MongoDB 8.3, [`sp.process()`](https://www.mongodb.com/docs/manual/reference/method/sp.process.md#mongodb-method-sp.process) supports the `options.limit` input parameter. After `sp.process()` returns `limit` documents to your terminal, the session ends.

### Text Search Spilling in Query Engine

Starting in MongoDB 8.3, the query engine limits the `TextOr` stage memory usage to 100 megabytes. The `TextOr` stage processes [`$text`](https://www.mongodb.com/docs/manual/reference/operator/query/text.md#mongodb-query-op.-text) queries that read text score metadata. For example, `TextOr` processes queries that sort results by text score. If the `TextOr` stage exceeds this limit:

- If `allowDiskUse` is `true`, the stage spills intermediate results to disk.

- If `allowDiskUse` is `false`, the query fails with an exceeded memory limit error.

In earlier versions, the `TextOr` stage had no memory limit and consumed RAM without restrictions, risking out-of-memory (OOM) errors.

### Representative Query Backfill for Query Settings

Starting in MongoDB 8.3, if the FCV (feature compatibility version) is 8.3 or later, MongoDB backfills the `representativeQuery` field for query settings that you set with a query shape hash. When MongoDB runs a query that matches the query shape, it schedules the backfill. The backfill requires no action from you.

The backfill runs asynchronously on a best-effort basis to limit the performance impact on your queries. A query setting isn't guaranteed to be backfilled the first time a matching query runs. If a backfill doesn't complete, MongoDB attempts it again the next time a matching query runs.

To hold the additional representative queries, MongoDB 8.3 also increases the storage capacity for representative queries in query settings beyond the original 16 MB BSON document limit.

To learn how to set query settings with a query shape hash, see [`setQuerySettings`.](https://www.mongodb.com/docs/manual/reference/command/setquerysettings.md#mongodb-dbcommand-dbcmd.setQuerySettings)

## Sharding

### DDL Operations for Sharded Clusters Can Only Run on mongos

Starting in MongoDB 8.3, you can only run [DDL operations](https://www.mongodb.com/docs/manual/reference/ddl-operations.md#std-label-ddl-operations) and [`applyOps`](https://www.mongodb.com/docs/manual/reference/command/applyops.md#mongodb-dbcommand-dbcmd.applyOps) on a `mongos` for all sharded clusters. For Atlas clusters, these operations may be temporarily unavailable while transitioning from a replica set to a sharded cluster.

### findShardsOnConfigTimeoutMS Parameter

MongoDB 8.3 adds the `findShardsOnConfigTimeoutMS` parameter which sets the timeout in milliseconds for `find` operations against the `config.shards` namespace. For details, see [`findShardsOnConfigTimeoutMS`.](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.findShardsOnConfigTimeoutMS)

### config.csrs.indexes Removed

MongoDB 8.3 removes the `config.csrs.indexes` namespace.

### 2dsphereIndexVersion

Starting in MongoDB 8.3, [2dsphereIndexVersion](https://www.mongodb.com/docs/manual/core/indexes/index-types/geospatial/2dsphere/2dsphere-index-versions.md#std-label-2dsphere-index-versions) is set to version `4` by default.

If you need to downgrade the [FCV](https://www.mongodb.com/docs/manual/reference/command/setfeaturecompatibilityversion.md#std-label-view-fcv) to anything below 8.3, you must first drop the `2dsphere` version `4` indexes.

### Shard Query Stats for mongos-Originated Queries

Starting in MongoDB 8.3, shard servers include queries that originate from `mongos` in their query statistics when [`queryStats`](https://www.mongodb.com/docs/manual/reference/command/serverstatus.md#mongodb-serverstatus-serverstatus.queryStats) is enabled. Previously, most queries forwarded from `mongos` to shards did not appear in shard-level query stats, which reduced the completeness of shard-level diagnostics.

### Conversion to Sharded Clusters

Starting in MongoDB 8.3, replica sets that were previously sharded clusters cannot be converted back into sharded clusters.

The conversion of a sharded cluster into a replica set preserves sharding metadata from its prior deployment, including a shard identity document, which blocks it from again becoming a sharded cluster. If you attempt a self-managed conversion back into a sharded cluster, MongoDB returns an error.

To convert such replica sets into sharded clusters, contact [Technical Support.](https://www.mongodb.com/docs/manual/support.md#std-label-technical-support)

### Conversion to Embedded Config Shard

MongoDB 8.3 introduces the [`mongod --replicaSetConfigShardMaintenanceMode`](https://www.mongodb.com/docs/manual/reference/program/mongod.md#std-option-mongod.--replicaSetConfigShardMaintenanceMode) option.

In previous releases, converting a replica set to a sharded cluster with an embedded config shard required you to first migrate to a sharded cluster with a dedicated config server replica set.

If you restart a replica set with the `--replicaSetConfigShardMaintenanceMode` and `--configsvr` options, you can convert the primary node directly into an embedded config shard.

For more information, see [Convert Replica Set to an Embedded Config Shard.](https://www.mongodb.com/docs/manual/tutorial/convert-replica-set-to-embedded-config-server.md#std-label-convert-replica-set-to-embedded-config-server)

## Time Series

### refineCollectionShardKey Formatting

Starting in MongoDB 8.3, [`refineCollectionShardKey`](https://www.mongodb.com/docs/manual/reference/command/refinecollectionshardkey.md#mongodb-dbcommand-dbcmd.refineCollectionShardKey) for time-series collections only accepts shard keys specified using the collection's logical meta and time fields. MongoDB no longer supports specifying keys using the underlying buckets format.

### Index Naming Restrictions

Starting in MongoDB 8.3, creating an index with the name of `"_id_"` or specifying a hint of `"_id_"` on time series collections returns an error.

### timeField Naming Restrictions

Starting in MongoDB 8.3, you cannot create a `timeField` that starts with a `$` character.

## Logging

### Fields to Track Use of Memory by Queries

Starting in MongoDB 8.3, you can use the following new fields to track query memory use:

| Field | Description |
| --- | --- |
| `inUseTrackedMemBytes` | Number of bytes of tracked memory in use by the current query operation. |
| `peakTrackedMemBytes` | Maximum number of bytes of tracked memory in use by the current query operation. |

Both fields appear in the following places:

- [$currentOp (Aggregation Stage)](https://www.mongodb.com/docs/manual/reference/operator/aggregation/currentop.md#std-label-current-op-agg) output

- [`db.currentOp()`](https://www.mongodb.com/docs/manual/reference/method/db.currentop.md#mongodb-method-db.currentOp) output

- [Database profiler](https://www.mongodb.com/docs/manual/reference/database-profiler.md#std-label-profiler) output

- [Log messages](https://www.mongodb.com/docs/manual/reference/log-messages.md#std-label-log-messages-ref)

- [Slow query log messages](https://www.mongodb.com/docs/manual/reference/log-messages.md#std-label-log-message-json-examples-slow-op)

The `peakTrackedMemBytes` field also appears in the following places:

- [Explain results](https://www.mongodb.com/docs/manual/reference/explain-results.md#std-label-explain-results)

- [`PlanCache.list()`](https://www.mongodb.com/docs/manual/reference/method/plancache.list.md#mongodb-method-PlanCache.list) output

- [`$planCacheStats`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/plancachestats.md#mongodb-pipeline-pipe.-planCacheStats) output

Starting in 8.3, use the following new metrics in [`$queryStats`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/querystats.md#mongodb-pipeline-pipe.-queryStats) to measure the behavior of `checkForInterrupt`:

- `metrics.numInterruptChecksPerSec`

- `metrics.overdueInterruptApproxMaxMillis`

### Mongos Query Shape Field

Starting in MongoDB 8.3, slow query log entries have an optional `originalQueryShapeHash` field that contains that query shape of the following operations that originate on the [`mongos`](https://www.mongodb.com/docs/manual/reference/program/mongos.md#std-program-mongos) :

- [`find`](https://www.mongodb.com/docs/manual/reference/command/find.md#mongodb-dbcommand-dbcmd.find)

- [`aggregate`](https://www.mongodb.com/docs/manual/reference/command/aggregate.md#mongodb-dbcommand-dbcmd.aggregate)

- [`count`](https://www.mongodb.com/docs/manual/reference/command/count.md#mongodb-dbcommand-dbcmd.count)

- [`distinct`](https://www.mongodb.com/docs/manual/reference/command/distinct.md#mongodb-dbcommand-dbcmd.distinct)

### Slow In-Progress Query Logs

MongoDB 8.3 introduces slow in-progress query log entries. Log messages on slow in-progress queries contain less information than standard slow query logs. MongoDB logs queries at most once if the query's duration surpasses the `slowOpInProgressThreshold`. You can set the threshold with [`db.setProfilingLevel()`](https://www.mongodb.com/docs/manual/reference/method/db.setprofilinglevel.md#mongodb-method-db.setProfilingLevel) or the new [`mongod --defaultSlowInProgMS`](https://www.mongodb.com/docs/manual/reference/program/mongod.md#std-option-mongod.--defaultSlowInProgMS) command line option.

## Explain Output

### Sharded Clusters

Starting in MongoDB 8.3, if you run `explain()` against a database that does not exist on a sharded cluster, the execution stage reaches the end-of-stream and the operation does not create the database. For more information on end-of-stream execution stats, see [`explain.executionStats.executionStages.isEOF`.](https://www.mongodb.com/docs/manual/reference/explain-results.md#mongodb-data-explain.executionStats.executionStages.isEOF)

## Security

### SCRAM-SHA-1 and FIPS Mode

Starting in MongoDB 8.3, you cannot specify `SCRAM-SHA-1` for [`authenticationMechanisms`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.authenticationMechanisms) while also specifying [`mongod --tlsFIPSMode`](https://www.mongodb.com/docs/manual/reference/program/mongod.md#std-option-mongod.--tlsFIPSMode) or [`mongos --tlsFIPSMode`.](https://www.mongodb.com/docs/manual/reference/program/mongos.md#std-option-mongos.--tlsFIPSMode)

If you try to specify `SCRAM-SHA-1` for `authenticationMechanisms` while also specifying `--tlsFIPSMode`, the server throws an error and logs a message similar to the following:

```none
SCRAM-SHA-1 is not allowed in FIPS mode.
```

## Known Issues

This section describes known issues in MongoDB 8.3 and their resolution status.

| In Version | Issue | Status |
| --- | --- | --- |
| 8.3.0 and later | [SERVER-136961](https://jira.mongodb.org/browse/SERVER-136961): If a node has an unclean shutdown for any reason and then restarts to perform a [file copy based initial sync](https://www.mongodb.com/docs/manual/core/replica-set-sync.md#std-label-replica-set-initial-sync-file-copy-based), the node crashes each time it restarts and cannot complete initial sync without manual intervention. To recover a node in a self-managed deployment, do one of the following: Restart the node with the [`initialSyncMethod`](https://www.mongodb.com/docs/manual/reference/parameters.md#mongodb-parameter-param.initialSyncMethod) parameter set to `logical`.; Delete the contents of the node's [`dbPath`](https://www.mongodb.com/docs/manual/reference/configuration-options.md#mongodb-setting-storage.dbPath) directory, then restart the node to begin a new file copy based initial sync. For MongoDB Atlas clusters, contact MongoDB Support to set the `initialSyncMethod` parameter to `logical`. | Open. |

## Upgrade Procedures

To upgrade to MongoDB 8.3, refer to the upgrade instructions specific to your MongoDB deployment:

- [Upgrade 8.0 to 8.3](https://www.mongodb.com/docs/manual/release-notes/8.3-upgrade-from-8.0.md#std-label-8.3-upgrade-from-8.0)

- [Upgrade 8.2 to 8.3](https://www.mongodb.com/docs/manual/release-notes/8.3-upgrade.md#std-label-8.3-upgrade-from-8.2)

If you need guidance on upgrading to 8.3, MongoDB professional services offer support to help ensure a smooth transition without interruption to your MongoDB application. To learn more, see [MongoDB Consulting.](https://www.mongodb.com/products/consulting)

## Download

To download MongoDB 8.3, go to the [MongoDB Download Center.](https://www.mongodb.com/try/download/community)

**Important:**

Minor releases may not support some features, including Atlas Live Migration or `mongosync`. If you require these features, use a Major release instead.

## Downgrade Considerations

Starting in MongoDB 8.3, you can downgrade your MongoDB version to the immediately previous minor or major version.

### Only Single-Version Downgrades are Supported

MongoDB supports single-version downgrades along adjacent versions only. You cannot downgrade to a release that is multiple versions behind your current release.

For any MongoDB release, you can upgrade or downgrade to the immediately previous major or minor version.

### Backward-Incompatible Features

MongoDB 8.3 includes features that are not compatible with earlier releases. Downgrading from 8.3 to an earlier release requires that you remove data that uses these features.

For more information, see [Backward-Incompatible Features.](https://www.mongodb.com/docs/manual/release-notes/8.3-compatibility.md#std-label-8.3-downgrade-incompatible)
