Explorar el Código

MAPREDUCE-4087. [Gridmix] GenerateDistCacheData job of Gridmix can become slow in some cases (ravigummadi)

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1307740 13f79535-47bb-0310-9956-ffa450edef68
Ravi Gummadi hace 13 años
padre
commit
170ff8d81c

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

@@ -52,6 +52,9 @@ Trunk (unreleased changes)
 
   BUG FIXES
 
+    MAPREDUCE-4087. [Gridmix] GenerateDistCacheData job of Gridmix can
+                    become slow in some cases (ravigummadi).
+
     MAPREDUCE-3953. [Gridmix] Gridmix throws NPE and does not simulate a
                     job if the trace contains null taskStatus for a task.
                     (ravigummadi)

+ 4 - 3
hadoop-mapreduce-project/src/contrib/gridmix/src/java/org/apache/hadoop/mapred/gridmix/GenerateDistCacheData.java

@@ -156,10 +156,11 @@ class GenerateDistCacheData extends GridmixJob {
       FSDataOutputStream dos =
           FileSystem.create(fs, path, new FsPermission((short)0755));
 
-      for (long bytes = key.get(); bytes > 0; bytes -= val.getLength()) {
+      int size = 0;
+      for (long bytes = key.get(); bytes > 0; bytes -= size) {
         r.nextBytes(val.getBytes());
-        val.setSize((int)Math.min(val.getLength(), bytes));
-        dos.write(val.getBytes(), 0, val.getLength());// Write to distCache file
+        size = (int)Math.min(val.getLength(), bytes);
+        dos.write(val.getBytes(), 0, size);// Write to distCache file
       }
       dos.close();
     }