Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
2.0.2-alpha
-
None
-
Reviewed
Description
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.
Attachments
Attachments
Issue Links
- breaks
-
HADOOP-9309 test failures on Windows due to UnsatisfiedLinkError in NativeCodeLoader#buildSupportsSnappy
- Resolved
- is related to
-
HADOOP-8806 libhadoop.so: dlopen should be better at locating libsnappy.so, etc.
- Closed
-
HBASE-7080 TestHFileOutputFormat.testColumnFamilyCompression failing due to UnsatisfiedLinkError
- Closed