-
Type:
Improvement
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Query Execution
-
Fully Compatible
-
QE 2026-01-05, QE 2025-12-22
-
200
-
None
-
None
-
None
-
None
-
None
-
None
-
None
In scenarios where `$merge` specifies `whenNotMatched: "insert"` `whenMatched:"keepExisting"` we could use insert path ignoring duplicate errors. We use updates with `upsert` which is less performant and cannot be batched into a single `insertMany`.
The `whenMatched: "fail"` `whenNotMatched: "insert"` path uses insert, but may not use `insertMany`.
- depends on
-
SERVER-115094 In MongoProcessInterface::insert return all error statuses instead of the first one
-
- Closed
-
- is related to
-
SERVER-113451 Duplicate-key errors cause excess slowness
-
- Backlog
-
-
SERVER-115810 When $merge "on" field uses default value, it doesn't respect collation
-
- In Progress
-
-
SERVER-115813 $merge doesn't forward collation to underlying updates
-
- Closed
-
- related to
-
SERVER-49952 check correctness and fix serverStatus metrics for $merge effects
-
- Backlog
-
-
SERVER-115094 In MongoProcessInterface::insert return all error statuses instead of the first one
-
- Closed
-
-
SERVER-116357 In $merge track InsertStats also for updates
-
- Needs Scheduling
-
-
SERVER-116358 Add debug logs to $merge insert with backup strategy
-
- Needs Scheduling
-