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

assert.soon does not print a call stack in case of a task time-out

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

      Some evergreen task time-outs are caused by failing assert-soons (because a failing assert.soon() increases the runtime of the test).

      In general, our assert-soons have too long default 'give-up' timeouts (10 minutes in evergreen, 90 minutes locally). I think we could shorten them to 5 minutes in both cases, but this is a separate point.

      Also (by default), a failing assert.soon() will start a hang analyser to print the call stacks of all mongo / mongoD / mongoS processes, which is sometimes helpful.

      However, when assert.soon() causes the evergreen task to time out, some of its debug-relevant information might not be printed into the log at all, including assert.soon() call stack and hang analyser output.

      As a solution, we might want to modify the mongo shell binary to print the JavaScript call stack at the moment it is being killed to have at least the call stack.

            Assignee:
            Unassigned Unassigned
            Reporter:
            romans.kasperovics@mongodb.com Romans Kasperovics
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated: