You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@helix.apache.org by "Lei Xia (JIRA)" <ji...@apache.org> on 2015/11/08 07:43:12 UTC
[jira] [Created] (HELIX-613) TaskStateModel generates significant
amount of threads and causing thread leaking problem
Lei Xia created HELIX-613:
-----------------------------
Summary: TaskStateModel generates significant amount of threads and causing thread leaking problem
Key: HELIX-613
URL: https://issues.apache.org/jira/browse/HELIX-613
Project: Apache Helix
Issue Type: Bug
Affects Versions: 0.6.x
Reporter: Lei Xia
Assignee: Lei Xia
Current TaskStateModel creates a thread-pool containing 40 threads for each instance of TaskStateModel, thus it creates 40 threads for each task (partition). Since Job are dynamic resources, the thread pool is not properly shutdown when task has completed (or timeouted, failed, etc). We saw ~10000 threads were created in our production machines.
Also, the timeout timer in each TaskStateModel is not properly cancelled even though the task has completed or failed. The timer consume a thread even though it is not used anymore.
The proposed solution is to use a shared thread pool for all TaskStateModel in a single TaskStateModelFactory for all regular tasks and timeout task.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)