瀏覽代碼

MAPREDUCE-6387. Serialize the recently added Task#encryptedSpillKey field at the end. (Arun Suresh via kasha)

Karthik Kambatla 10 年之前
父節點
當前提交
6786daab33

+ 3 - 0
hadoop-mapreduce-project/CHANGES.txt

@@ -496,6 +496,9 @@ Release 2.7.1 - UNRELEASED
     copySucceeded() in one thread and copyFailed() in another thread on the
     copySucceeded() in one thread and copyFailed() in another thread on the
     same host. (Junping Du via ozawa)
     same host. (Junping Du via ozawa)
 
 
+    MAPREDUCE-6387. Serialize the recently added Task#encryptedSpillKey field at 
+    the end. (Arun Suresh via kasha)
+
 Release 2.7.0 - 2015-04-20
 Release 2.7.0 - 2015-04-20
 
 
   INCOMPATIBLE CHANGES
   INCOMPATIBLE CHANGES

+ 2 - 2
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/Task.java

@@ -513,8 +513,8 @@ abstract public class Task implements Writable, Configurable {
     out.writeBoolean(taskCleanup);
     out.writeBoolean(taskCleanup);
     Text.writeString(out, user);
     Text.writeString(out, user);
     out.writeInt(encryptedSpillKey.length);
     out.writeInt(encryptedSpillKey.length);
-    out.write(encryptedSpillKey);
     extraData.write(out);
     extraData.write(out);
+    out.write(encryptedSpillKey);
   }
   }
   
   
   public void readFields(DataInput in) throws IOException {
   public void readFields(DataInput in) throws IOException {
@@ -541,8 +541,8 @@ abstract public class Task implements Writable, Configurable {
     user = StringInterner.weakIntern(Text.readString(in));
     user = StringInterner.weakIntern(Text.readString(in));
     int len = in.readInt();
     int len = in.readInt();
     encryptedSpillKey = new byte[len];
     encryptedSpillKey = new byte[len];
-    in.readFully(encryptedSpillKey);
     extraData.readFields(in);
     extraData.readFields(in);
+    in.readFully(encryptedSpillKey);
   }
   }
 
 
   @Override
   @Override