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

Sergey Shelukhin edited comment on HIVE-17133 at 8/2/17 12:51 AM:
------------------------------------------------------------------

The solution would be to upgrade to 2.8.2 once that is released. We'd always 
build with the old signature and thus support old and new versions but not the 
ones in the middle (need to verify that we do indeed refer to a method with old 
signature when building).
Thus, Hive will not support Hadoop 2.8.0 and 2.8.1.
The problem is if we release something referring to the new signature soon (or 
have already). We might need 2.2.1 and 2.3.1 if these were built against Hadoop 
2.8.0/1, as far as I understand cc [~owen.omalley] [~pxiong]


was (Author: sershe):
The solution would be to upgrade to 2.8.2 once that is released. We'd always 
build with the old signature and thus support old and new versions but not the 
ones in the middle (need to verify that we do indeed refer to a method with old 
signature when building).
Thus, Hive will not support Hadoop 2.8.0 and 2.8.1.
The problem is if we release something referring to the new signature soon (or 
have already). We might need 2.2.1 and 2.3.0 if these were built against Hadoop 
2.8.0/1, as far as I understand cc [~owen.omalley] [~pxiong]

> NoSuchMethodError in Hadoop FileStatus.compareTo
> ------------------------------------------------
>
>                 Key: HIVE-17133
>                 URL: https://issues.apache.org/jira/browse/HIVE-17133
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Rui Li
>
> The stack trace is:
> {noformat}
> Caused by: java.lang.NoSuchMethodError: 
> org.apache.hadoop.fs.FileStatus.compareTo(Lorg/apache/hadoop/fs/FileStatus;)I
>       at 
> org.apache.hadoop.hive.ql.io.AcidUtils.lambda$getAcidState$0(AcidUtils.java:931)
>       at java.util.TimSort.countRunAndMakeAscending(TimSort.java:355)
>       at java.util.TimSort.sort(TimSort.java:234)
>       at java.util.Arrays.sort(Arrays.java:1512)
>       at java.util.ArrayList.sort(ArrayList.java:1454)
>       at java.util.Collections.sort(Collections.java:175)
>       at 
> org.apache.hadoop.hive.ql.io.AcidUtils.getAcidState(AcidUtils.java:929)
> {noformat}
> I'm on Hive master and using Hadoop 2.7.2. The method signature in Hadoop 
> 2.7.2 is:
> https://github.com/apache/hadoop/blob/release-2.7.2-RC2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileStatus.java#L336
> In Hadoop 2.8.0 it becomes:
> https://github.com/apache/hadoop/blob/release-2.8.0-RC3/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/FileStatus.java#L332
> I think that breaks binary compatibility.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to