You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@tez.apache.org by "László Bodor (Jira)" <ji...@apache.org> on 2022/03/07 13:57:00 UTC
[jira] [Updated] (TEZ-4394) Netty4 ShuffleHandler: use 1 boss thread
[ https://issues.apache.org/jira/browse/TEZ-4394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
László Bodor updated TEZ-4394:
------------------------------
Description:
https://github.com/apache/tez/commit/01847814d32aac6b77a6810ea25d6780fb94b257#diff-5c5dffcaf349fe521937812b49849c59fba3e67fc53d74fb990b7e0ef7ff5e59R182
With netty3, we initialized NioServerSocketChannelFactory with below constructor:
{code}
selector = new NioServerSocketChannelFactory(
Executors.newCachedThreadPool(bossFactory),
Executors.newCachedThreadPool(workerFactory),
maxShuffleThreads);
{code}
this always creates 1 boss and n maxShuffleThreads threads:
{code}
public NioServerSocketChannelFactory(
Executor bossExecutor, Executor workerExecutor,
int workerCount) {
this(bossExecutor, 1, workerExecutor, workerCount);
}
{code}
afaik, in netty's implementation, it makes no sense to assign a thread group of >1 thread to boss, as the implementation uses 1 anyway
> Netty4 ShuffleHandler: use 1 boss thread
> ----------------------------------------
>
> Key: TEZ-4394
> URL: https://issues.apache.org/jira/browse/TEZ-4394
> Project: Apache Tez
> Issue Type: Bug
> Reporter: László Bodor
> Priority: Major
>
> https://github.com/apache/tez/commit/01847814d32aac6b77a6810ea25d6780fb94b257#diff-5c5dffcaf349fe521937812b49849c59fba3e67fc53d74fb990b7e0ef7ff5e59R182
> With netty3, we initialized NioServerSocketChannelFactory with below constructor:
> {code}
> selector = new NioServerSocketChannelFactory(
> Executors.newCachedThreadPool(bossFactory),
> Executors.newCachedThreadPool(workerFactory),
> maxShuffleThreads);
> {code}
> this always creates 1 boss and n maxShuffleThreads threads:
> {code}
> public NioServerSocketChannelFactory(
> Executor bossExecutor, Executor workerExecutor,
> int workerCount) {
> this(bossExecutor, 1, workerExecutor, workerCount);
> }
> {code}
> afaik, in netty's implementation, it makes no sense to assign a thread group of >1 thread to boss, as the implementation uses 1 anyway
--
This message was sent by Atlassian Jira
(v8.20.1#820001)