Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Duplicate
-
3.2.0
-
None
Description
In ErasureCodingWorker, stripedReconstructionPool is create by
initializeStripedBlkReconstructionThreadPool(conf.getInt( DFSConfigKeys.DFS_DN_EC_RECONSTRUCTION_THREADS_KEY, DFSConfigKeys.DFS_DN_EC_RECONSTRUCTION_THREADS_DEFAULT)); private void initializeStripedBlkReconstructionThreadPool(int numThreads) { LOG.debug("Using striped block reconstruction; pool threads={}", numThreads); stripedReconstructionPool = DFSUtilClient.getThreadPoolExecutor(2, numThreads, 60, new LinkedBlockingQueue<>(), "StripedBlockReconstruction-", false); stripedReconstructionPool.allowCoreThreadTimeOut(true); }
so stripedReconstructionPool is a ThreadPoolExecutor, and the queue is a LinkedBlockingQueue, then the active thread is awalys 2, the dfs.datanode.ec.reconstruction.threads not take effect.
Attachments
Issue Links
- duplicates
-
HDFS-14367 EC: Parameter maxPoolSize in striped reconstruct thread pool isn't affecting number of threads
- Resolved
- links to