- 
    Type:Bug 
- 
    Resolution: Fixed
- 
    Priority:Major - P3 
- 
    None
- 
    Affects Version/s: 4.2.14, 4.4.6, 5.0.0-rc7
- 
    Component/s: None
- 
    None
- 
        Storage Execution
- 
        Fully Compatible
- 
        ALL
- 
        
- 
        Execution Team 2021-06-28, QE 2021-11-01, QE 2021-11-15, QE 2021-11-29, QE 2021-12-13, QE 2021-12-27, QE 2022-01-10, QE 2022-02-07, QE 2022-02-21, QE 2022-01-24
- 
        None
- 
        None
- 
        None
- 
        None
- 
        None
- 
        None
- 
        None
Delete performance appears to suffer greatly if there are multiple secondary indexes with the same first field in a key. This does not appear to have an obvious reason, because using a hint improves performance significantly.
For example:
- Say collection has two secondary indexes {a: 1, b: 1} and {a: 1, c: 1} with 10K documents
- Perform a delete on {a: <value>}
- This query takes 5 seconds. If an index is dropped or a hint is used, the same query performance improves to around 200ms.
- As additional indexes are added, performance degrades linearly
Investigate the reason for this discrepancy.
Note: I tested this regression and it exists at least as far back as 4.2
- depends on
- 
                    SERVER-58712 Inconsistent update performance on collections with multiple secondary indexes on same key -         
- Closed
 
-         
- 
                    SERVER-55750 Enable Feature flag for PM-2227 -         
- Closed
 
-         
- 
                    SERVER-65528 Use range bounded cursors for restoring index cursors after yielding -         
- Closed
 
-         
- is related to
- 
                    SERVER-56274 TTL deletes are much slower on descending indexes than ascending indexes -         
- Closed
 
-         
- 
                    SERVER-57307 Improve deletion of config.chunks entries with hint and retries -         
- Closed
 
-         
- 
                    SERVER-56509 Wrap unique index insertion _keyExists call in a WT cursor reconfigure. -         
- Closed
 
-         
- related to
- 
                    SERVER-58712 Inconsistent update performance on collections with multiple secondary indexes on same key -         
- Closed
 
-         
- 
                    SERVER-70184 Complete TODO listed in SERVER-57221 -         
- Blocked
 
-         
- 
                    WT-7619 Add a new optimization to skip pages in cursor traversal when all entries on the page are deleted -         
- Closed
 
-         


