-
Type: Improvement
-
Resolution: Done
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Replication
-
Fully Compatible
-
v4.4
-
Repl 2020-02-10, Repl 2020-02-24, Repl 2020-03-09, Repl 2020-03-23
-
30
In order to do this we would need to decide what should be done when a document cannot be found to update. The current behavior, of potentially creating a partial document, has some downsides when users make changes independent of replication, like during manual maintenance (or user/admin mistakes).
We may also only want to make this change during normal replication, not when re-applying from a failed batch, during rollback, or in other cases where we may be working with repeated operations.
- causes
-
SERVER-47022 Oplog application mode must be set to kRecovering when applying oplog entries after rollbackViaRefetch
- Closed
- has to be done before
-
SERVER-46221 Remove oplogApplicationEnforcesSteadyStateConstraints parameter and opCounters
- Open
- is duplicated by
-
SERVER-26358 Reconsider converting update to upsert in steady state replication
- Closed
-
SERVER-38724 Under rare conditions, updates to capped collections can cause SECONDARY members to fail
- Closed
-
SERVER-27594 Don't apply update oplog entries as upserts
- Closed
- is related to
-
SERVER-47053 Relax oplog application constraints in EMRC=false variants
- Closed
-
SERVER-54150 Recovery from a stable checkpoint should fassert on oplog application failures
- Closed
-
SERVER-21829 Nodes should consider themselves non-voting during initial sync
- Closed
- related to
-
SERVER-31387 oplog application conflates upserting with being in steady state replication
- Closed
-
SERVER-32346 When applying applyOps commands during initialSync, do not override alwaysUpsert flag
- Closed
-
SERVER-32937 Relax renameCollection namespace length check in oplog application
- Closed
-
SERVER-43193 Always disable document validation on secondaries
- Closed
-
SERVER-44450 Do not add fromMigrate field to applyOps insert oplog entries
- Closed
-
SERVER-46550 Enabling sharding creates a database without an oplog entry
- Closed
-
SERVER-46603 disallow empty collection index build optimization on secondaries
- Closed
-
SERVER-46656 Secondary and primary can disagree on index build method
- Closed
-
SERVER-50532 Cannot require that database exists when applying 'dropDatabase' oplog entry
- Closed
-
SERVER-61532 Opcounters to detect constraint violations need to be exposed.
- Closed
-
SERVER-47383 Complete TODO listed in SERVER-46656
- Closed
-
SERVER-71490 Move steady state replication constraint relaxation opCounters to logs
- Closed
-
SERVER-27205 Remove implicit collection creation from SyncTail
- Closed
-
SERVER-33719 createCollectionForApplyOps should invariant that collections are not renamed in replication steady state
- Closed
-
SERVER-45033 Log operations we do, not those we were told to do, in atomic applyOps oplog entries
- Closed
-
SERVER-48593 createIndexForApplyOps() should always relax index build constraints
- Closed