You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by ll...@apache.org on 2012/12/22 00:17:46 UTC
svn commit: r1425183 - in /hadoop/common/branches/branch-1.0: CHANGES.txt
src/mapred/org/apache/hadoop/mapred/SortedRanges.java
Author: llu
Date: Fri Dec 21 23:17:46 2012
New Revision: 1425183
URL: http://svn.apache.org/viewvc?rev=1425183&view=rev
Log:
MAPREDUCE-4272. SortedRanges.Range#compareTo is not spec compliant. (Yu Gao via llu)
Modified:
hadoop/common/branches/branch-1.0/CHANGES.txt
hadoop/common/branches/branch-1.0/src/mapred/org/apache/hadoop/mapred/SortedRanges.java
Modified: hadoop/common/branches/branch-1.0/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-1.0/CHANGES.txt?rev=1425183&r1=1425182&r2=1425183&view=diff
==============================================================================
--- hadoop/common/branches/branch-1.0/CHANGES.txt (original)
+++ hadoop/common/branches/branch-1.0/CHANGES.txt Fri Dec 21 23:17:46 2012
@@ -8,6 +8,9 @@ Release 1.0.5 - unreleased
BUG FIXES
+ MAPREDUCE-4272. SortedRanges.Range#compareTo is not spec compliant.
+ (Yu Gao via llu)
+
HADOOP-9051. Fix ant clean/test with circular symlinks in build dir. (llu)
MAPREDUCE-4396. Port support private distributed cache to
Modified: hadoop/common/branches/branch-1.0/src/mapred/org/apache/hadoop/mapred/SortedRanges.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-1.0/src/mapred/org/apache/hadoop/mapred/SortedRanges.java?rev=1425183&r1=1425182&r2=1425183&view=diff
==============================================================================
--- hadoop/common/branches/branch-1.0/src/mapred/org/apache/hadoop/mapred/SortedRanges.java (original)
+++ hadoop/common/branches/branch-1.0/src/mapred/org/apache/hadoop/mapred/SortedRanges.java Fri Dec 21 23:17:46 2012
@@ -271,7 +271,7 @@ class SortedRanges implements Writable{
}
public boolean equals(Object o) {
- if(o!=null && o instanceof Range) {
+ if (o instanceof Range) {
Range range = (Range)o;
return startIndex==range.startIndex &&
length==range.length;
@@ -285,10 +285,11 @@ class SortedRanges implements Writable{
}
public int compareTo(Range o) {
- if(this.equals(o)) {
- return 0;
- }
- return (this.startIndex > o.startIndex) ? 1:-1;
+ // Ensure sgn(x.compareTo(y) == -sgn(y.compareTo(x))
+ return this.startIndex < o.startIndex ? -1 :
+ (this.startIndex > o.startIndex ? 1 :
+ (this.length < o.length ? -1 :
+ (this.length > o.length ? 1 : 0)));
}
public void readFields(DataInput in) throws IOException {