Gera Shegalov created HADOOP-11924:
--------------------------------------
Summary: Tolerate JDK-8047340-related exceptions in
Shell#isSetSidAvailable preventing class init
Key: HADOOP-11924
URL: https://issues.apache.org/jira/browse/HADOOP-11924
Project: Hadoop Common
Issue Type: Bug
Reporter: Gera Shegalov
Address the root cause of HADOOP-11916 per
https://issues.apache.org/jira/browse/HADOOP-11916?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14528009#comment-14528009
{quote}
JDK-8047340 explicitly calls out BSD-like systems, should not we just exclude
those systems instead of enabling solely Linux?
{code}
Assume.assumeFalse("Avoiding JDK-8047340 on BSD-based systems", Shell.FREEBSD
|| Shell.MAC);
{code}
However, I don't think this is the right fix. Shell on BSD-like systems is
broken with the TR locale. Shell class initialization happens only because
StringUtils references Shell.WINDOWS.
We can simply catch Throwable in Shell#isSetsidSupported instead of
IOException. If we want to be pedantic we can rethrow
{code}
if (!(t instanceof IOException) && !(Shell.FREEBSD || Shell.MAC))
{code}
With such a change the test can run unchanged.
{quote}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)