diff options
author | Matei Zaharia <matei@eecs.berkeley.edu> | 2010-11-03 22:52:41 -0700 |
---|---|---|
committer | Matei Zaharia <matei@eecs.berkeley.edu> | 2010-11-03 22:52:41 -0700 |
commit | d947cb97789acd04b7f02410490fa3f91c2a7bca (patch) | |
tree | 54ceae424393c3207d93852e1877e817cae96c89 | |
parent | 44530c310b33cb750922d836d35e56b3979b1382 (diff) | |
download | spark-d947cb97789acd04b7f02410490fa3f91c2a7bca.tar.gz spark-d947cb97789acd04b7f02410490fa3f91c2a7bca.tar.bz2 spark-d947cb97789acd04b7f02410490fa3f91c2a7bca.zip |
Fixed a bug with negative hashcodes
-rw-r--r-- | src/scala/spark/DfsShuffle.scala | 5 |
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()) |