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

Naganarasimha G R commented on YARN-3792:
-----------------------------------------


bq. I still see one test failing:
I had sufficiently tested in my laptop but still seems to be happening :(
bq. l.376: I don't really like the sleep call as it is not completely 
deterministic; could there be a way to make this completely deterministic 
(using things like CountDownLatch, etc.)?
Test failing also is due to the fact that there is a race condition between the 
application finished being published and test case checking this published 
event in the file. AFAIK using CountDownLatch might not be possible as its 
happening asynchrously in the Mini YARN cluster and the test case needs to wait 
till published event is written to the file. In the test case once Application 
status(YarnApplicationState) and FinalApplicationStatus indicates the app is 
over we are checking for the published events, even then as events are 
published through dispatcher its not guranteed to be finished. Other approach i 
can think of is to make the test sleep for 500 seconds 3~4 times or till the 
desired result is got (i think this is the approach which is followed in most 
of the test cases which are highly async), thoughts ? I am open for other 
approaches too :)

bq. l.71-75: Is this comment necessary here? I'm not sure if we want to add a 
generic comment like this to a specific test...
Well atleast in my environment(latest ubuntu) even after JAVA_HOME was set 
properly in shell, test cases when executed from eclipse were failing because 
of the JAVA_HOME was not availble and it took a while for me to figure out 
doing this. Hence i thought it would be usefull information for others who r 
testing for the first time, If you guys feel not necessary i can remove it.

bq. l.106: Are the checks for null necessary? I thought that the test name was 
populated by junit and made available to test methods. Do things fail if we do 
not check for null?
yes its req, as mentioned earlier for 
??{{TestDistributedShellWithNodeLabels.testDSShellWithNodeLabelExpression}} was 
failing because method name rule will not set be set in 
TestDistributedShell.setupInternal??

Can take care of the remaining comments

> Test case failures in TestDistributedShell and some issue fixes related to 
> ATSV2
> --------------------------------------------------------------------------------
>
>                 Key: YARN-3792
>                 URL: https://issues.apache.org/jira/browse/YARN-3792
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: timelineserver
>            Reporter: Naganarasimha G R
>            Assignee: Naganarasimha G R
>         Attachments: YARN-3792-YARN-2928.001.patch
>
>
> # encountered [testcase 
> failures|https://builds.apache.org/job/PreCommit-YARN-Build/8233/testReport/] 
> which was happening even without the patch modifications in YARN-3044
> TestDistributedShell.testDSShellWithoutDomainV2CustomizedFlow
> TestDistributedShell.testDSShellWithoutDomainV2DefaultFlow
> TestDistributedShellWithNodeLabels.testDSShellWithNodeLabelExpression
> # Remove unused {{enableATSV1}} in testDisstributedShell
> # container metrics needs to be published only for v2 test cases of 
> testDisstributedShell
> # Nullpointer was thrown in TimelineClientImpl.constructResURI when Aux 
> service was not configured and {{TimelineClient.putObjects}} was getting 
> invoked.
> # Race condition for the Application events to published and test case 
> verification for RM's ApplicationFinished Timeline Events
> # Application Tags for converted to lowercase in 
> ApplicationSubmissionContextPBimpl, hence RMTimelinecollector was not able to 
> detect to custom flow details of the app



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

Reply via email to