[SERVER-24433] Distinguish between the simple collator and the absence of a collator Created: 07/Jun/16 Updated: 22/Jan/24 |
|
| Status: | Backlog |
| Project: | Core Server |
| Component/s: | Querying |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | David Storch | Assignee: | Backlog - Query Optimization |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Assigned Teams: |
Query Optimization
|
||||||||||||
| Participants: | |||||||||||||
| Description |
|
Currently we use a null CollatorInterface* to represent two different states: 1) the "simple" collator, which the user can specify with {collation: {locale: "simple"}}, and 2) the absence of a collator. If the user does not specify a collation field with a command, the collation is unknown until we read the collection metadata, since such operations inherit the default collation set on the collection. The current implementation is awkward since we have to take extra steps to distinguish {locale: "simple"} from this "unknown" case. |