Uploaded image for project: 'C Driver'
  1. C Driver
  2. CDRIVER-3646

Hidden Indexes



    • Improvement
    • Status: Blocked
    • Major - P3
    • Resolution: Unresolved
    • None
    • None
    • None
    • None


      Description of Drivers Ticket:

      Downstream Change Summary

      TBD when the project completes.

      Description of Linked Ticket

      Epic Summary


      This project implements functionality to allow indexes to be hidden from the query planner.


      As MongoDB users evolve schemas and tune performance, they are often in a position where dropping an index could improve query performance and reduce collection overhead. However, dropping an index comes with the risk that an application or script may depend on an index for acceptable performance and recreating can take substantial time.

      Allowing users to hide an index provides the opportunity to evaluate impact on user workloads. Restoring the index can then be done quickly, without having to undergo the time and expense of a full index build.

      Additionally, adding an index can cause a negative change in performance, if the query planner starts using the new index over a preferable existing index. Creating an index that is hidden on build completion allows users to make it visible at a suitable time for evaluation.

      Hiding an index only allows for plan selection evaluation and does not reduce the cost of maintenance. Index removal will still be required to reclaim disk space and improve write performance.

      Cast of Characters

      • Product Owner: Katya Kamenieva
      • Project Lead: James Wahlin
      • Program Manager: Craig Homa


      Scope Document
      Technical Design Document


      Specs commit: https://github.com/mongodb/specifications/commit/fafb0076e3c2ee8c35497bd1260c1cfc672c4919
      See DRIVERS-816 for updated details.


        Issue Links



              Unassigned Unassigned
              backlog-server-pm Backlog - Core Eng Program Management Team
              0 Vote for this issue
              2 Start watching this issue