You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Colin Patrick McCabe (JIRA)" <ji...@apache.org> on 2012/09/12 19:53:08 UTC

[jira] [Updated] (HADOOP-8756) Fix SEGV when libsnappy is in java.library.path but not LD_LIBRARY_PATH

     [ https://issues.apache.org/jira/browse/HADOOP-8756?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Colin Patrick McCabe updated HADOOP-8756:
-----------------------------------------

    Summary: Fix SEGV when libsnappy is in java.library.path but not LD_LIBRARY_PATH  (was: libsnappy loader issues)
    
> Fix SEGV when libsnappy is in java.library.path but not LD_LIBRARY_PATH
> -----------------------------------------------------------------------
>
>                 Key: HADOOP-8756
>                 URL: https://issues.apache.org/jira/browse/HADOOP-8756
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: native
>    Affects Versions: 2.0.2-alpha
>            Reporter: Colin Patrick McCabe
>            Assignee: Colin Patrick McCabe
>            Priority: Minor
>         Attachments: HADOOP-8756.002.patch, HADOOP-8756.003.patch
>
>
> We use {{System.loadLibrary("snappy")}} from the Java side.  However in libhadoop, we use {{dlopen}} to open libsnappy.so dynamically.  System.loadLibrary uses {{java.library.path}} to resolve libraries, and {{dlopen}} uses {{LD_LIBRARY_PATH}} and the system paths to resolve libraries.  Because of this, the two library loading functions can be at odds.
> We should fix this so we only load the library once, preferably using the standard Java {{java.library.path}}.
> We should also log the search path(s) we use for {{libsnappy.so}} when loading fails, so that it's easier to diagnose configuration issues.

--
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