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

Colin Patrick McCabe commented on HADOOP-8806:
----------------------------------------------

bq. With that in mind, I'd rather link against it dynamically. Especially if we 
are not getting rid of dynamic aspect alltogether (libz will remain to be 
dynamically linked).

I think a lot of people still don't have libsnappy installed, and they would 
perceive being required to install it to use libhadoop as a regression.  In 
contrast, nearly every system in existence has libz installed.

bq. re static linking, we should make sure we don't accidentally export the 
libsnappy symbols, though – we'd like someone to be able to pull in 
libhadoop.so but separately link their own snappy from somewhere else if they 
so choose.

I agree that we should not export the libsnappy symbols.  I mean really we 
should not be exporting any symbols except the ones that the JVM invokes.  But 
that's a bit of a separate issue.

bq. [epel discussion]

EPEL isn't officially supported by Red Hat, and a lot of systems don't install 
packages from there.  There are other third-party repos for Red Hat, and some 
of them conflict with one another, as I found out (but that's another story)

For now, I think we have to assume that most users will not have libsnappy 
provided by their base OS.  When that changes in a few years we can revisit 
this.
                
> libhadoop.so: search java.library.path when calling dlopen
> ----------------------------------------------------------
>
>                 Key: HADOOP-8806
>                 URL: https://issues.apache.org/jira/browse/HADOOP-8806
>             Project: Hadoop Common
>          Issue Type: Improvement
>            Reporter: Colin Patrick McCabe
>            Priority: Minor
>
> libhadoop calls {{dlopen}} to load {{libsnappy.so}} and {{libz.so}}.  These 
> libraries can be bundled in the {{$HADOOP_ROOT/lib/native}} directory.  For 
> example, the {{-Dbundle.snappy}} build option copies {{libsnappy.so}} to this 
> directory.  However, snappy can't be loaded from this directory unless 
> {{LD_LIBRARY_PATH}} is set to include this directory.
> Should we also search {{java.library.path}} when loading these libraries?

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

Reply via email to