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

Update timeout calculator to handle `max_duration_pass `

    • Fully Compatible
    • v7.0, v6.0, v5.0, v4.4, v4.2
    • DAG 2023-07-10
    • 156
    • 1

      We currently only track and make available for use in the timeout calculator the average time that a test took to pass recently. This metric is fine to use for most task timeout calculations as tests for the most part are supposed to have a set runtime they adhere to and deviations from that are incorrect.

      However, tests such as benchmarks can have a semi-random runtime instead and can vary pretty widely from run to time. This makes it difficult for the task generator to split up benchmark tasks effectively and can cause semi-random timeouts and also task groups  with very uneven wall clock runtimes in them.

      To help minimize the risk of these timeouts, we instead want to begin bucketing based upon the recent max runtime of benchmark tests. This should be a better metric to use in regards to these benchmark tests and lead to less of a risk of new BFs that arise and then closed as noise.

      To support this, we're exposing a new parameter called `max_duration_pass` as part of the task runtime history and need to update the Python buildscript code in the mongo repo to expect this new parameter. The task generation work will be done in a separate ticket. 

            jeff.zambory@mongodb.com Jeffrey Zambory
            jeff.zambory@mongodb.com Jeffrey Zambory
            0 Vote for this issue
            3 Start watching this issue