Audit invariants that assert preconditions/postconditions/arguments from mongo/db/query

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Query Execution
    • QE 2025-10-13, QE 2025-10-27, QE 2025-11-24, QE 2025-11-10
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Assert and replace invariants, fasserts, MONGO_UNREACHABLE and MONGO_UNIMPLEMENTED macros usage with tassert for logical pre-, post- conditions and for validating function arguments or user input{why it is safe and why it is valuable}.
      This ticket is only concerned with the query owned code located in src/mongo/db/query and not it's subdirectories that have dedicated tickets.

      Assess the invariants against this checklist:

      • Invariant is not on the write path.
      • Invariant is not asserting data coming from the storage layer.
      • Invariant is not asserting the shared state that's accessible from other threads.
      • Tassert would release all the resources that are violating the invariant.
      • Invariant is covered by either unit test of jstest.

        1.
        Audit invariants that assert preconditions/postconditions/arguments from src/mongo/db/query/bson SERVER-111771 Sub-task Closed Catalin Sumanaru 8.3.0-rc0
        2.
        Audit invariants that assert preconditions/postconditions/arguments from src/mongo/db/query/client_cursor SERVER-111772 Sub-task Closed Catalin Sumanaru 8.3.0-rc0
        3.
        Audit invariants that assert preconditions/postconditions/arguments from src/mongo/db/query/collation SERVER-111773 Sub-task Closed Catalin Sumanaru 8.3.0-rc0
        4.
        Audit invariants that assert preconditions/postconditions/arguments from src/mongo/db/query/datetime SERVER-111774 Sub-task Closed Catalin Sumanaru 8.3.0-rc0
        5.
        Audit invariants that assert preconditions/postconditions/arguments from src/mongo/db/query/fle SERVER-111775 Sub-task Closed Catalin Sumanaru 8.3.0-rc0
        6.
        Audit invariants that assert preconditions/postconditions/arguments from src/mongo/db/query/plan_cache SERVER-111776 Sub-task Closed Catalin Sumanaru 8.3.0-rc0
        7.
        Audit invariants that assert preconditions/postconditions/arguments from src/mongo/db/query/query_settings SERVER-111777 Sub-task Closed Catalin Sumanaru  
        8.
        Audit invariants that assert preconditions/postconditions/arguments from src/mongo/db/query/search SERVER-111778 Sub-task Closed Catalin Sumanaru  
        9.
        Audit invariants that assert preconditions/postconditions/arguments from src/mongo/db/query/timeseries SERVER-111779 Sub-task Closed Catalin Sumanaru 8.3.0-rc0
        10.
        Audit invariants that assert preconditions/postconditions/arguments from canonical query and command parsing/encoding SERVER-113209 Sub-task Closed Catalin Sumanaru 8.3.0-rc0
        11.
        Audit invariants that assert preconditions/postconditions/arguments from query planning (classic planner) SERVER-113210 Sub-task Closed Catalin Sumanaru 8.3.0-rc0
        12.
        Audit invariants that assert preconditions/postconditions/arguments from wildcard index planning helpers SERVER-113211 Sub-task Closed Catalin Sumanaru 8.3.0-rc0
        13.
        Audit invariants that assert preconditions/postconditions/arguments from plan ranking and trial execution SERVER-113212 Sub-task In Code Review Catalin Sumanaru  
        14.
        Audit invariants that assert preconditions/postconditions/arguments from executors and execution control (classic + SBE) SERVER-113213 Sub-task Needs Scheduling Catalin Sumanaru  
        15.
        Audit invariants that assert preconditions/postconditions/arguments from SBE-specific execution and explain SERVER-113214 Sub-task In Progress Catalin Sumanaru  
        16.
        Audit invariants that assert preconditions/postconditions/arguments from plan cache, invalidation hooks, and collection query metadata SERVER-113215 Sub-task Needs Scheduling Catalin Sumanaru  

            Assignee:
            Catalin Sumanaru
            Reporter:
            Serhii Lysenko
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: