diff options
-rw-r--r-- | jstests/noPassthrough/getParameterWithDetails.js | 4 | ||||
-rw-r--r-- | src/mongo/executor/task_executor_pool.cpp | 6 | ||||
-rw-r--r-- | src/mongo/executor/task_executor_pool_parameters.idl | 2 |
3 files changed, 10 insertions, 2 deletions
diff --git a/jstests/noPassthrough/getParameterWithDetails.js b/jstests/noPassthrough/getParameterWithDetails.js index 2ade6a7f48d..331073d0d1c 100644 --- a/jstests/noPassthrough/getParameterWithDetails.js +++ b/jstests/noPassthrough/getParameterWithDetails.js @@ -97,8 +97,8 @@ ]; const specificParametersMongosOnly = [ { - name: "taskExecutorPoolSize", - result: {value: 1, settableAtRuntime: true, settableAtStartup: true} + name: "activeFaultDurationSecs", + result: {value: 120, settableAtRuntime: true, settableAtStartup: true} }, { name: "userCacheInvalidationIntervalSecs", diff --git a/src/mongo/executor/task_executor_pool.cpp b/src/mongo/executor/task_executor_pool.cpp index 3b53f624154..b6869489793 100644 --- a/src/mongo/executor/task_executor_pool.cpp +++ b/src/mongo/executor/task_executor_pool.cpp @@ -40,6 +40,11 @@ namespace mongo { namespace executor { size_t TaskExecutorPool::getSuggestedPoolSize() { +#if (defined __linux__) + // Always use a pool of size 1 on Linux machines running mongo v4.2 and higher. + // Changing it past the default value can cause performance regressions. + return 1; +#else auto poolSize = taskExecutorPoolSize.load(); if (poolSize > 0) { return poolSize; @@ -50,6 +55,7 @@ size_t TaskExecutorPool::getSuggestedPoolSize() { // Never suggest a number outside the range [4, 64]. return std::max<size_t>(4U, std::min<size_t>(64U, numCores)); +#endif //__linux__ } void TaskExecutorPool::startup() { diff --git a/src/mongo/executor/task_executor_pool_parameters.idl b/src/mongo/executor/task_executor_pool_parameters.idl index 8eba1da54c9..f0082f030a8 100644 --- a/src/mongo/executor/task_executor_pool_parameters.idl +++ b/src/mongo/executor/task_executor_pool_parameters.idl @@ -38,3 +38,5 @@ server_parameters: cpp_vartype: "AtomicWord<int>" cpp_varname: "taskExecutorPoolSize" default: 1 + condition: + preprocessor: '!defined(__linux__)' |