You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-commits@hadoop.apache.org by sz...@apache.org on 2010/06/21 23:19:40 UTC

svn commit: r956698 - in /hadoop/mapreduce/branches/branch-0.21: CHANGES.txt src/examples/org/apache/hadoop/examples/QuasiMonteCarlo.java

Author: szetszwo
Date: Mon Jun 21 21:19:39 2010
New Revision: 956698

URL: http://svn.apache.org/viewvc?rev=956698&view=rev
Log:
MAPREDUCE-1880. Fix BigDecimal.divide(..) in the pi example.

Modified:
    hadoop/mapreduce/branches/branch-0.21/CHANGES.txt
    hadoop/mapreduce/branches/branch-0.21/src/examples/org/apache/hadoop/examples/QuasiMonteCarlo.java

Modified: hadoop/mapreduce/branches/branch-0.21/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/mapreduce/branches/branch-0.21/CHANGES.txt?rev=956698&r1=956697&r2=956698&view=diff
==============================================================================
--- hadoop/mapreduce/branches/branch-0.21/CHANGES.txt (original)
+++ hadoop/mapreduce/branches/branch-0.21/CHANGES.txt Mon Jun 21 21:19:39 2010
@@ -1473,3 +1473,5 @@ Release 0.21.0 - Unreleased
 
     MAPREDUCE-1765. Correct streaming documentation for StreamXmlRecordReader.
     (Corinne Chandel via amareshwari)
+
+    MAPREDUCE-1880. Fix BigDecimal.divide(..) in the pi example.  (szetszwo)

Modified: hadoop/mapreduce/branches/branch-0.21/src/examples/org/apache/hadoop/examples/QuasiMonteCarlo.java
URL: http://svn.apache.org/viewvc/hadoop/mapreduce/branches/branch-0.21/src/examples/org/apache/hadoop/examples/QuasiMonteCarlo.java?rev=956698&r1=956697&r2=956698&view=diff
==============================================================================
--- hadoop/mapreduce/branches/branch-0.21/src/examples/org/apache/hadoop/examples/QuasiMonteCarlo.java (original)
+++ hadoop/mapreduce/branches/branch-0.21/src/examples/org/apache/hadoop/examples/QuasiMonteCarlo.java Mon Jun 21 21:19:39 2010
@@ -20,6 +20,7 @@ package org.apache.hadoop.examples;
 
 import java.io.IOException;
 import java.math.BigDecimal;
+import java.math.RoundingMode;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.conf.Configured;
@@ -318,10 +319,11 @@ public class QuasiMonteCarlo extends Con
       }
 
       //compute estimated value
+      final BigDecimal numTotal
+          = BigDecimal.valueOf(numMaps).multiply(BigDecimal.valueOf(numPoints));
       return BigDecimal.valueOf(4).setScale(20)
           .multiply(BigDecimal.valueOf(numInside.get()))
-          .divide(BigDecimal.valueOf(numMaps))
-          .divide(BigDecimal.valueOf(numPoints));
+          .divide(numTotal, RoundingMode.HALF_UP);
     } finally {
       fs.delete(TMP_DIR, true);
     }