Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-74758

SBE performance: investigate cost of invariant() and tassert() in SBE

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None
    • Query Execution

      There are two questions this investigation should answer:

      1. [Tactical] What is the relative performance cost of invariant() vs tassert()?
      2. [Strategic] What is the total absolute performance cost of having thousands of these calls in the production code?

      Re. #1, if we find that tassert() is x% slower than invariant(), we can use that to set a goal line for improving the performance of tassert().

      Re. #2, this is about finding out the maximum theoretical performance gain possible by removing 100% of the invariant() and tassert() calls, i.e.insight into how much these are costing us overall performance-wise. If this turns out to be a large number, we can use that to guide decisions on how much we want to aim to reduce the sheer numbers of these calls.

            Assignee:
            backlog-query-execution [DO NOT USE] Backlog - Query Execution
            Reporter:
            kevin.cherkauer@mongodb.com Kevin Cherkauer
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated: