[SERVER-63749] Put view validation logic on applyOps direct writes to <db>.system.views Created: 16/Feb/22 Updated: 26/Oct/23 |
|
| Status: | Backlog |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Dianna Hohensee (Inactive) | Assignee: | Backlog - Catalog and Routing |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | catalog, oldstorexemea | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Assigned Teams: |
Catalog and Routing
|
||||||||
| Participants: | |||||||||
| Description |
|
The goal here is to move towards removing the internal view catalog logic where we support having invalid views. Regular user writes to <db>.system.views collections is supposed to no longer be allowed re I believe the idea is that downstream teams want to take oplog entries and directly apply them to mongod servers via applyOps. So perhaps there's a way we can add validation logic here, where primaries at least can error – some investigation of how downstream teams use applyOps is necessary, to determine what we must support versus can prevent. Update: Max thinks mongomirror might not use applyOps for views after all. |
| Comments |
| Comment by Dianna Hohensee (Inactive) [ 16/Feb/22 ] |
|
Some follow up work to this would be to add a version upgrade step at some point to ensure all existing view entries are valid. With that, I think we can get rid of the invalid view catalog handling in our code. |