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

Make TTL monitor multi-threaded

    XMLWordPrintableJSON

Details

    • Icon: Improvement Improvement
    • Resolution: Unresolved
    • Icon: Major - P3 Major - P3
    • None
    • None
    • None
    • None
    • Storage Execution

    Description

      TTL deletes are limited by a single-threaded background task. This can be problematic in very large instances with many TTL indexes and can result in a situation where the TTL monitor cannot keep up with new writes.

      Consider redesigning the TTL Monitor to dispatch fix-sized deletion batches to an appropriately-sized thread pool (some constant factor of the number of available cores). This would likely be done in combination with SERVER-56194 to limit the number of deletes per collection and also reduce the interval between TTL passes.

      Note that TTL deletes are very impactful on WT, so we should be very careful to evaluate the performance consequences of performing a higher volume of TTL deletions.

      Attachments

        Activity

          People

            backlog-server-execution Backlog - Storage Execution Team
            louis.williams@mongodb.com Louis Williams
            Votes:
            0 Vote for this issue
            Watchers:
            19 Start watching this issue

            Dates

              Created:
              Updated: