- 
    Type:Improvement 
- 
    Resolution: Unresolved
- 
    Priority:Major - P3 
- 
    None
- 
    Affects Version/s: None
- 
    Component/s: None
- 
        Query Optimization
- 
        None
- 
        None
- 
        None
- 
        None
- 
        None
- 
        None
- 
        None
Problem
Query planner relies on these methods from IndexCatalogEntry to prepare IndexEntry in QueryPlannerParams.
However, if an index is corrupted as in HELP-65833 where isMultikey() may return false while getMultikeyPaths() returns a non-empty vector, a query planner may and hence produce incorrect results.
Action Item
- When preparing IndexEntry, if isMultikey() return false, also checks getMultikeyPaths() to see if it returns empty array. If not, set IndexEntry::isMultikey to true.
- Log whenever it observes multikey path inconsistency from IndexCatalogEntry.
- duplicates
- 
                    SERVER-96032 Add safety check for `multikey` flag and `multikeyPath` values consistency in the local catalog -         
- Closed
 
-