[ 
https://issues.apache.org/jira/browse/SPARK-20426?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

jin xing updated SPARK-20426:
-----------------------------
    Description: Spark jobs are running on yarn cluster in my warehouse. We 
enabled the external shuffle service(*--conf 
spark.shuffle.service.enabled=true*). Recently NodeManager runs OOM now and 
then. Dumping heap memory, we find that *OneFroOneStreamManager*'s footprint is 
huge. NodeManager is configured with 5G heap memory. While *OneForOneManager* 
costs 2.5G and there are 5503233 *FileSegmentManagedBuffer* objects. Is there 
any suggestions to avoid this other than just keep increasing NodeManager's 
memory? Is it possible to stop *registerStream* in OneForOneStreamManager? Thus 
we don't need to cache so many metadatas(i.e. StreamState).  (was: Spark jobs 
are running on yarn cluster in my warehouse. We enabled the external shuffle 
service(*--conf spark.shuffle.service.enabled=true*). Recently NodeManager runs 
OOM now and then. Dumping heap memory, we find that *OneFroOneStreamManager*'s 
footprint is huge. NodeManager is configured with 5G heap memory. While 
*OneForOneManager* costs 2.5G and there are 5503233 *FileSegmentManagedBuffer* 
objects. Is there any suggestions to avoid this other than just keep increasing 
NodeManager's memory? Is it possible to stop *registerStream* in 
OneForOneStreamManager? Thus we don't need to cache so many metadata(i.e. 
StreamState).)

> OneForOneStreamManager occupies too much memory.
> ------------------------------------------------
>
>                 Key: SPARK-20426
>                 URL: https://issues.apache.org/jira/browse/SPARK-20426
>             Project: Spark
>          Issue Type: Improvement
>          Components: Shuffle
>    Affects Versions: 2.1.0
>            Reporter: jin xing
>         Attachments: screenshot-1.png, screenshot-2.png
>
>
> Spark jobs are running on yarn cluster in my warehouse. We enabled the 
> external shuffle service(*--conf spark.shuffle.service.enabled=true*). 
> Recently NodeManager runs OOM now and then. Dumping heap memory, we find that 
> *OneFroOneStreamManager*'s footprint is huge. NodeManager is configured with 
> 5G heap memory. While *OneForOneManager* costs 2.5G and there are 5503233 
> *FileSegmentManagedBuffer* objects. Is there any suggestions to avoid this 
> other than just keep increasing NodeManager's memory? Is it possible to stop 
> *registerStream* in OneForOneStreamManager? Thus we don't need to cache so 
> many metadatas(i.e. StreamState).



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org
For additional commands, e-mail: issues-h...@spark.apache.org

Reply via email to