You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Apache Spark (JIRA)" <ji...@apache.org> on 2017/11/08 22:14:01 UTC
[jira] [Assigned] (SPARK-22471) SQLListener consumes much memory
causing OutOfMemoryError
[ https://issues.apache.org/jira/browse/SPARK-22471?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Apache Spark reassigned SPARK-22471:
------------------------------------
Assignee: (was: Apache Spark)
> SQLListener consumes much memory causing OutOfMemoryError
> ---------------------------------------------------------
>
> Key: SPARK-22471
> URL: https://issues.apache.org/jira/browse/SPARK-22471
> Project: Spark
> Issue Type: Bug
> Components: SQL, Web UI
> Affects Versions: 2.2.0
> Environment: Spark 2.2.0, Linux
> Reporter: Arseniy Tashoyan
> Labels: memory-leak, sql
> Attachments: SQLListener_retained_size.png, SQLListener_stageIdToStageMetrics_retained_size.png
>
> Original Estimate: 72h
> Remaining Estimate: 72h
>
> _SQLListener_ may grow very large when Spark runs complex multi-stage requests. The listener tracks metrics for all stages in __stageIdToStageMetrics_ hash map. _SQLListener_ has some means to cleanup this hash map regularly, but this is not enough. Precisely, the method _trimExecutionsIfNecessary_ ensures that __stageIdToStageMetrics_ does not have metrics for very old data; this method runs on each execution completion.
> However, if an execution has many stages, _SQLListener_ keeps adding new entries to __stageIdToStageMetrics_ without calling _trimExecutionsIfNecessary_. The hash map may grow to enormous size.
> Strictly speaking, it is not a memory leak, because finally _trimExecutionsIfNecessary_ cleans the hash map. However, the driver program has high odds to crash with OutOfMemoryError (and it does).
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org