Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 8 additions & 9 deletions docs/features/known-limitations.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,27 +6,26 @@

1. Only **logical** backups and restores are supported.
2. Selective backups and restores are supported in sharded clusters for non-sharded collections starting with version 2.0.3. Sharded collections are supported starting with version 2.1.0.
3. Selective restore of sharded collections from either a full logical backup or a selective logical backup is not supported if the distribution of chunks in the backup differs from the distribution of chunks in the existing collection. The supported way to restore in this scenario is to drop the target collection before performing the selective restore, ensuring shard metadata is recreated consistently.
4. Sharded time series collections are not supported.
5. Multi-collection transactions are not yet supported for selective restore. However, if you use them and attempt a selective restore, it may break [ACID](../reference/glossary.md#acid) because not all operations with this transaction are restored. PBM applies oplog events that relate only to the specified namespaces(s). Thus, from the transaction's point of view, the data consistency may be broken.
3. Sharded time series collections are not supported.

Check warning on line 9 in docs/features/known-limitations.md

View workflow job for this annotation

GitHub Actions / vale

[vale] docs/features/known-limitations.md#L9

[Vale.Spelling] Did you really mean 'Sharded'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'Sharded'?", "location": {"path": "docs/features/known-limitations.md", "range": {"start": {"line": 9, "column": 4}}}, "severity": "WARNING"}
4. Multi-collection transactions are not yet supported for selective restore. However, if you use them and attempt a selective restore, it may break [ACID](../reference/glossary.md#acid) because not all operations with this transaction are restored. PBM applies oplog events that relate only to the specified namespaces(s). Thus, from the transaction's point of view, the data consistency may be broken.

Check failure on line 10 in docs/features/known-limitations.md

View workflow job for this annotation

GitHub Actions / vale

[vale] docs/features/known-limitations.md#L10

[Google.OptionalPlurals] Don't use plurals in parentheses such as in 'namespaces(s)'.
Raw output
{"message": "[Google.OptionalPlurals] Don't use plurals in parentheses such as in 'namespaces(s)'.", "location": {"path": "docs/features/known-limitations.md", "range": {"start": {"line": 10, "column": 310}}}, "severity": "ERROR"}

For example, you have a transaction that involves collections A and B. When you restore collection A, PBM replays oplog events only for collection A and ignores those related to collection B. As a result, the state of collection B remains unchanged and is no longer consistent with collection A.

6. System collections in ``admin``, ``config``, and ``local`` databases cannot be backed up and restored selectively. You must make a full backup and restore to include them.
7. Selective point-in-time recovery is not supported for sharded clusters.
5. System collections in ``admin``, ``config``, and ``local`` databases cannot be backed up and restored selectively. You must make a full backup and restore to include them.
6. Selective point-in-time recovery is not supported for sharded clusters.

Check warning on line 15 in docs/features/known-limitations.md

View workflow job for this annotation

GitHub Actions / vale

[vale] docs/features/known-limitations.md#L15

[Vale.Spelling] Did you really mean 'sharded'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'sharded'?", "location": {"path": "docs/features/known-limitations.md", "range": {"start": {"line": 15, "column": 58}}}, "severity": "WARNING"}

## Oplog slicing for point-in-time recovery

Oplog slicing is an integral part of the point-in-time recovery routine that enables you to restore from a backup up to a specific moment. Read more about [point-in-time recovery](point-in-time-recovery.md).

**For in MongoDB 5.0 and higher versions**

If you [reshard :octicons-link-external-16:](https://www.mongodb.com/docs/manual/core/sharding-reshard-a-collection/) a collection, make a fresh backup and re-enable point-in-time recovery oplog slicing to prevent data inconsistency and restore failure.

**For MongoDB 8.0 and higher versions**

If you [unshard a collection :octicons-link-external-16:](https://www.mongodb.com/docs/v8.0/reference/command/unshardCollection/), make a fresh backup and re-enable point-in-time recovery oplog slicing to prevent data inconsistency and restore failure.

**For in MongoDB 5.0 and higher versions**

If you [reshard :octicons-link-external-16:](https://www.mongodb.com/docs/manual/core/sharding-reshard-a-collection/) a collection, make a fresh backup and re-enable point-in-time recovery oplog slicing to prevent data inconsistency and restore failure.

Check warning on line 27 in docs/features/known-limitations.md

View workflow job for this annotation

GitHub Actions / vale

[vale] docs/features/known-limitations.md#L27

[Vale.Spelling] Did you really mean 'reshard'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'reshard'?", "location": {"path": "docs/features/known-limitations.md", "range": {"start": {"line": 27, "column": 9}}}, "severity": "WARNING"}

## Oplog replay from arbitrary start time

The oplog replay fails if you rename the entire database or a collection.