[SERVER-63075] Move PreWriteFilter under public Sharding Catalog API Created: 28/Jan/22 Updated: 27/Oct/23 Resolved: 04/Jul/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Antonio Fuschetto | Assignee: | [DO NOT USE] Backlog - Sharding EMEA |
| Resolution: | Works as Designed | Votes: | 0 |
| Labels: | PM-2144-Milestone-0 | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Assigned Teams: |
Sharding EMEA
|
| Participants: |
| Description |
|
The PreWriteFilter class models different types of actions that can be taken in the management of write operations, that is, to process, to skip, or to process avoiding to notify wrong change stream events. This logic is currently implemented in the Query Execution subsystem (i.e., write_stage_common namespace) but, by its nature, it should be owned by Sharding instead. The goal of this task is to move that logic under the public Sharding Catalog API, i.e., collection_sharding_state or scoped_collection_metadata. |
| Comments |
| Comment by Jordi Serra Torrens [ 04/Jul/23 ] |
|
The ShardRoleAPI provides the sharding filter. The PreWriteFilter is a query exec construct on top of it. |