[ 
https://issues.apache.org/jira/browse/TEZ-3114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15143288#comment-15143288
 ] 

Siddharth Seth commented on TEZ-3114:
-------------------------------------

Flow control would definitely be nice to have.

1000 + source tasks ? EventMetaData is a fairly expensive object which could be 
simplified a lot - vertexNames - ids, taskAttemptId with Ids.
TaskAttemptId are shared. The vertex names could be interned - this is all 
short term though. That's also a lot of unnecessary data transfer over the wire.

That said, EventMetaData instances should be candidates for GC once 
LogicalIOPorcessorRuntimeTask is done with them - and forwarded them over to 
the actual Input/Ouput/Processor. From the heap dump, do you know what is 
holding on to these instances ?

> Shuffle OOM due to EventMetaData flood
> --------------------------------------
>
>                 Key: TEZ-3114
>                 URL: https://issues.apache.org/jira/browse/TEZ-3114
>             Project: Apache Tez
>          Issue Type: Bug
>    Affects Versions: 0.7.0
>            Reporter: Jason Lowe
>
> A task encountered an OOM during shuffle, and investigation of the heap dump 
> showed a lot of memory being consumed by almost 3.5 million EventMetaData 
> objects.  Auto-parallelism had reduced the number of tasks in the vertex to 1 
> and there were 2000 upstream tasks to shuffle.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to