Do not store non-document operation with batches #17679
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Suggested merge commit message (convention)
Other (engine): Do not store non-document operation with batches. This improves memory efficiency for huge documents. Closes #17678.
Additional information
To verify correctness of this change, I checked three things:
applyOperation
listener. All places except of two filter non-document operations. One place is legacy lists, I skipped it. Other place is in commercial repo. The listener can work like it does but I will create a PR to fix it. This confirms, that we generally do not care about these operations.Batch#operations
to see if there are risky places where we might check the contents ofoperations
for reasons. We do it very rarely. The places where we do it, it is fine after the change.Operation#batch
. This property is practically not used.