As described in this section of the design document, change shard key value extraction for orphan filtering to treat missing shard key fields as null values (like an index) to allow documents in a sharded collection to not contain every field in the shard key. (Previously such documents were considered orphaned and always filtered out of sharded query results.)
In addition to updating shard key extraction for filtering, the rules for targeting queries should be updated as described in the design document section linked above. All checks used to enforce documents contain the full shard key can be removed (like the checkShardingIndex command).
When this ticket is completed, the generated docs ticket should include the need to document that after a downgrade any documents missing a shard key field will become orphaned.
- related to
-
SERVER-44382 Allow upserting a document that is missing a shard key field
- Closed
-
SERVER-46505 Add back requirement that full shard key must be in query to update a shard key value
- Closed