[
https://issues.apache.org/jira/browse/HDFS-9410?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15000120#comment-15000120
]
Walter Su commented on HDFS-9410:
---------------------------------
Fortunately we fork a JVM for each test class. I think we still need to fix
this to avoid System.out pollution in other test cases in same class.
It's just I think can we backup {{originOut}} at class level?
{code}
private static final PrintStream originOut = System.out;
private static final PrintStream originErr = System.err;
{code}
And I really don't trust {{System.err.flush();}} won't throw any unexpected
runtime exception. So I think can we put the restore code in a "finally\{
//here \}"?
Just some thought, if you don't agree. Anyway, the patch looks good to me.
> TestDFSAdminWithHA#tearDown may throw NPE
> -----------------------------------------
>
> Key: HDFS-9410
> URL: https://issues.apache.org/jira/browse/HDFS-9410
> Project: Hadoop HDFS
> Issue Type: Test
> Components: HDFS
> Reporter: Xiao Chen
> Assignee: Xiao Chen
> Priority: Minor
> Attachments: HDFS-9410.001.patch
>
>
> If for any reason {{setUpHaCluster}} fails before storing {{System.out}} and
> {{System.err}} as member variables {{originOut}} and {{originErr}}, then in
> {{tearDown}} {{System.out}} and {{System.err}} are set to null. This could
> cause all following tests to fail when calling {{flush}}.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)