GitHub user prakhar-jauhari opened a pull request:
https://github.com/apache/spark/pull/8065
[SPARK-9396] [yarn] Spark yarn allocator does not call
"removeContainerRequest" for allocated Container requests, resulting in bloated
ask[] toYarn RM.
Spark-1.2 : Spark's AM does not call removeConatinerRequest for fulfilled
container request.
As long as the cluster size is large enough to allocate the bloated
container requests, containers are sent to spark yarn allocator in allocate
response, spark yarn allocator uses missing number of container to launch new
executors and release the extra allocated containers.
The problem increase in case of a long running job with large executor
memory requirements. In this case when ever a executor gets killed, the next
ask to yarn Resource manager (RM) is of n+1 containers, which might be served
by the RM if it still has enough resources, else RM starts reserving cluster
resources for a containers which are not even required by spark in the first
place. This causes inefficient resource utilization of cluster resources.
I have added and tested changes for removing fulfilled container requests
in spark 1.2 code. @vanzin can you please review the changes. Thanks in advance.
The contribution is original work and that I license the work to the
project under the project's open source license.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/prakhar-jauhari/spark branch-1.2
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/spark/pull/8065.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #8065
----
commit 6c70411f1ef3b01a1c1d87bf0e20f121e2f0cc6c
Author: prakhar jauhari <[email protected]>
Date: 2015-07-31T10:17:33Z
SPARK-9396: Spark yarn allocator does not call "removeContainerRequest" for
allocated Container requests, resulting in bloated ask[] toYarn RM.
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]