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

TaskExecutorPool wrong core count

    XMLWordPrintableJSON

Details

    • Icon: Improvement Improvement
    • Resolution: Fixed
    • Icon: Minor - P4 Minor - P4
    • 4.3.4
    • None
    • Internal Code
    • None
    • Fully Compatible
    • Service Arch 2020-02-10

    Description

      Feels like TaskExecutorPool should be looking at getNumAvailableCores, which would be less than getNumCores in a vCPU-restricted container.

      size_t TaskExecutorPool::getSuggestedPoolSize() {
       auto poolSize = taskExecutorPoolSize.load();
       if (poolSize > 0) {
       return poolSize;
       }
      ProcessInfo p;
       unsigned numCores = p.getNumCores();
      // Never suggest a number outside the range [4, 64].
       return std::max(4U, std::min(64U, numCores));
      }
       
      

       

       

      Attachments

        Activity

          People

            amirsaman.memaripour@mongodb.com Amirsaman Memaripour
            billy.donahue@mongodb.com Billy Donahue
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: