hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ivan A. Veselovsky (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-9205) Java7: path to native libraries should be passed to tests via -Djava.library.path rather than env.LD_LIBRARY_PATH
Date Tue, 15 Jan 2013 11:56:13 GMT

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

Ivan A. Veselovsky commented on HADOOP-9205:
--------------------------------------------

Shortest way to reproduce the issue:
Run test org.apache.hadoop.util.TestNativeCodeLoader with -Drequire.test.libhadoop=true and

env variable LD_LIBRARY_PATH=.../hadoop-common/hadoop-common-project/hadoop-common/target/native/target/usr/local/lib
If you're running on Java 1.6, the test passes.
If you're running on Java 1.7, the test fails.
If we add parameter
-Djava.library.path=.../hadoop-common/hadoop-common-project/hadoop-common/target/native/target/usr/local/lib
, the test passes on both 1.6 and 1.7.

This is reproducible with Oracle's JDK jdk1.7.0_07, jdk1.7.0_10, but is *not* reproducible
with jdk1.7.0_05, so Kihwall's observation regarding 1.7.0_05 is correct.
                
> Java7: path to native libraries should be passed to tests via -Djava.library.path rather
than env.LD_LIBRARY_PATH
> -----------------------------------------------------------------------------------------------------------------
>
>                 Key: HADOOP-9205
>                 URL: https://issues.apache.org/jira/browse/HADOOP-9205
>             Project: Hadoop Common
>          Issue Type: Bug
>    Affects Versions: 3.0.0, 2.0.3-alpha, 0.23.6
>            Reporter: Ivan A. Veselovsky
>            Assignee: Ivan A. Veselovsky
>         Attachments: HADOOP-9205.patch
>
>
> Currently the path to native libraries is passed to unit tests via environment variable
LD_LIBRARTY_PATH. This is okay for Java6, but does not work for Java7, since Java7 ignores
this environment variable.
> So, to run the tests with native implementation on Java7 one needs to pass the paths
to native libs via -Djava.library.path system property rather than the LD_LIBRARY_PATH env
variable.
> The suggested patch fixes the problem via setting the paths to native libs using both
LD_LIBRARY_PATH and -Djava.library.path property. This way the tests work equally on both
Java6 and Java7.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message