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

Anand Srinivasan commented on YARN-10068:
-----------------------------------------

Hi Prabhu Joseph,

Thanks for reviewing the patch.

I fixed the checkstyle issues now.

The reasons we don't need new tests are that :

(1)There are no changes to the putObjects() API signature so the callers and 
their functionalities won't be affected/changed with this fix.

(2)The functionality of the API itself is not changed. The exceptions thrown 
from this method are still the same. This fix just closes the inputstream of 
the ClientResponse object which again is local to the putObjects() method. 
There are no visible changes to the callers of this method both in terms of 
functionality and throwing exceptions.

(3)The existing tests covers both the positive and negative cases for this 
particular functionality already.

Thanks and kind regards.

> TimelineV2Client may leak file descriptors creating ClientResponse objects.
> ---------------------------------------------------------------------------
>
>                 Key: YARN-10068
>                 URL: https://issues.apache.org/jira/browse/YARN-10068
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: ATSv2
>    Affects Versions: 3.0.0
>         Environment: HDP VERSION3.1.4
> AMBARI VERSION2.7.4.0
>            Reporter: Anand Srinivasan
>            Assignee: Anand Srinivasan
>            Priority: Critical
>         Attachments: YARN-10068.001.patch, YARN-10068.002.patch, 
> YARN-10068.003.patch, image-2020-01-02-14-58-12-773.png
>
>
> Hi team,
> Code-walkthrough between v1 and v2 of TimelineClient API revealed that v2 API 
> TimelineV2ClientImpl#putObjects doesn't close ClientResponse objects under 
> success status returned from Timeline Server. ClientResponse is closed only 
> under erroneous response from the server using ClientResponse#getEntity.
> We also noticed that TimelineClient (v1) closes the ClientResponse object in 
> TimelineWriter#putEntities by calling ClientResponse#getEntity in both 
> success and error conditions from the server thereby avoiding this file 
> descriptor leak.
> Customer's original issue and the symptom was that the NodeManager went down 
> because of 'too many files open' condition where there were lots of 
> CLOSED_WAIT sockets observed between the timeline client (from NM) and the 
> timeline server hosts. 
> Could you please help resolve this issue ? Thanks.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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

Reply via email to