You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ambari.apache.org by "Jonathan Hurley (JIRA)" <ji...@apache.org> on 2015/11/24 21:52:11 UTC
[jira] [Updated] (AMBARI-14050) Produce a Warning When Jetty Pool
Size Is Too Low And Increase It
[ https://issues.apache.org/jira/browse/AMBARI-14050?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jonathan Hurley updated AMBARI-14050:
-------------------------------------
Attachment: AMBARI-14050.patch
> Produce a Warning When Jetty Pool Size Is Too Low And Increase It
> -----------------------------------------------------------------
>
> Key: AMBARI-14050
> URL: https://issues.apache.org/jira/browse/AMBARI-14050
> Project: Ambari
> Issue Type: Bug
> Components: ambari-server
> Affects Versions: 2.0.0
> Reporter: Jonathan Hurley
> Assignee: Jonathan Hurley
> Priority: Critical
> Fix For: 2.1.3
>
> Attachments: AMBARI-14050.patch
>
>
> Ambari's default Jetty thread pool is configured at 25 threads. When deployed on a machine that has 48 "processors", Jetty's calculation for determining how many "Acceptor" and "Selector" threads to create never takes into account the core pool size. As a result, we get:
> - 12 "Acceptor" threads (these answer binds to port 8080)
> - 12 "Selector" threads (these pick available threads to answer bindings)
> - 1 free thread (these are the threads available to do stuff with)
> Notice that there's only 1 free thread. This means that Jetty effectively makes Ambari a single-threaded web application on larger systems!
> The "fix" is to increase the thread count in the {{ambari.properties}}, however nobody knows to do this since no warning is produced.
> I suggest:
> - Log a warning on server startup if we detect that the core pool size is less than 3/4 of the available processors on the system.
> - Automatically increase the core pool size to the min(100, double existing size) when the above is detected
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)