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

Periodically check for interrupt in dbStats

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

      It seems dbStats may take a long time to execute, if there are many collections to iterate through. dbStats uses the forEachCollectionFromDb helper function, which does not appear to check for interrupts periodically.

      As a result, it seems possible for a primary to step down, attempt to kill user operations, and wait to obtain RSTL, but dbStats would continue to execute through every collection. This can cause RSTL timeouts to occur on state transitions.

      To help prevent this, we should consider checking for interrupts, perhaps within the dbStats code or within forEachCollectionFromDb.

            Assignee:
            Unassigned Unassigned
            Reporter:
            xuerui.fa@mongodb.com Xuerui Fa
            Votes:
            0 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated: