aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMatei Zaharia <matei@eecs.berkeley.edu>2010-11-03 22:52:41 -0700
committerMatei Zaharia <matei@eecs.berkeley.edu>2010-11-03 22:52:41 -0700
commitd947cb97789acd04b7f02410490fa3f91c2a7bca (patch)
tree54ceae424393c3207d93852e1877e817cae96c89 /src
parent44530c310b33cb750922d836d35e56b3979b1382 (diff)
downloadspark-d947cb97789acd04b7f02410490fa3f91c2a7bca.tar.gz
spark-d947cb97789acd04b7f02410490fa3f91c2a7bca.tar.bz2
spark-d947cb97789acd04b7f02410490fa3f91c2a7bca.zip
Fixed a bug with negative hashcodes
Diffstat (limited to 'src')
-rw-r--r--src/scala/spark/DfsShuffle.scala5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/scala/spark/DfsShuffle.scala b/src/scala/spark/DfsShuffle.scala
index a100ddf05b..e751e1bd75 100644
--- a/src/scala/spark/DfsShuffle.scala
+++ b/src/scala/spark/DfsShuffle.scala
@@ -84,7 +84,10 @@ extends Logging
new ObjectOutputStream(fs.create(path, true))
}).toArray
for ((k, c) <- combiners) {
- val bucket = k.hashCode % numOutputSplits
+ var bucket = k.hashCode % numOutputSplits
+ if (bucket < 0) {
+ bucket += numOutputSplits
+ }
outputStreams(bucket).writeObject((k, c))
}
outputStreams.foreach(_.close())