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

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

I think Alan's proposal is reasonable. Adding a version number to the library 
name is a simple, easy solution that fixes the cross-version compatibility 
problems that [~alanburlison] identified.  As per the email thread, we already 
have cases of real incompatibilities in {{libhadoop.so}} between versions.  I 
agree it is inconvenient to make the user install {{libhadoop.2.7.3.so}} before 
using Hadoop 2.7.3 (or whatever version).  But after all, this is something 
that Ambari and Cloudera Manager could both handle really well.  
{{libhadoop.so}} is less than  megabyte in size-- it's hardly an overwhelming 
burden to have even a dozen different versions installed.

Does anyone have an alternative proposal (and implementation?) to 
[~alanburlison]'s?  If not, then I think we should accept his.  We can always 
do the "jar bundling" solution later.

> Improve versioning and compatibility support in native library for downstream 
> hadoop-common users.
> --------------------------------------------------------------------------------------------------
>
>                 Key: HADOOP-11127
>                 URL: https://issues.apache.org/jira/browse/HADOOP-11127
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: native
>            Reporter: Chris Nauroth
>            Assignee: Alan Burlison
>         Attachments: HADOOP-11064.003.patch, proposal.01.txt
>
>
> There is no compatibility policy enforced on the JNI function signatures 
> implemented in the native library.  This library typically is deployed to all 
> nodes in a cluster, built from a specific source code version.  However, 
> downstream applications that want to run in that cluster might choose to 
> bundle a hadoop-common jar at a different version.  Since there is no 
> compatibility policy, this can cause link errors at runtime when the native 
> function signatures expected by hadoop-common.jar do not exist in 
> libhadoop.so/hadoop.dll.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to