aboutsummaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorLianhui Wang <lianhuiwang09@gmail.com>2015-12-15 18:16:22 -0800
committerAndrew Or <andrew@databricks.com>2015-12-15 18:17:48 -0800
commit369127f03257e7081d2aa1fc445e773b26f0d5e3 (patch)
tree93a99d48eb11377998b3b76f7590a528e70ea7f7 /core
parentf725b2ec1ab0d89e35b5e2d3ddeddb79fec85f6d (diff)
downloadspark-369127f03257e7081d2aa1fc445e773b26f0d5e3.tar.gz
spark-369127f03257e7081d2aa1fc445e773b26f0d5e3.tar.bz2
spark-369127f03257e7081d2aa1fc445e773b26f0d5e3.zip
[SPARK-12130] Replace shuffleManagerClass with shortShuffleMgrNames in ExternalShuffleBlockResolver
Replace shuffleManagerClassName with shortShuffleMgrName is to reduce time of string's comparison. and put sort's comparison on the front. cc JoshRosen andrewor14 Author: Lianhui Wang <lianhuiwang09@gmail.com> Closes #10131 from lianhuiwang/spark-12130.
Diffstat (limited to 'core')
-rw-r--r--core/src/main/scala/org/apache/spark/shuffle/ShuffleManager.scala4
-rw-r--r--core/src/main/scala/org/apache/spark/shuffle/hash/HashShuffleManager.scala2
-rw-r--r--core/src/main/scala/org/apache/spark/shuffle/sort/SortShuffleManager.scala2
-rw-r--r--core/src/main/scala/org/apache/spark/storage/BlockManager.scala2
4 files changed, 9 insertions, 1 deletions
diff --git a/core/src/main/scala/org/apache/spark/shuffle/ShuffleManager.scala b/core/src/main/scala/org/apache/spark/shuffle/ShuffleManager.scala
index 978366d1a1..a3444bf4da 100644
--- a/core/src/main/scala/org/apache/spark/shuffle/ShuffleManager.scala
+++ b/core/src/main/scala/org/apache/spark/shuffle/ShuffleManager.scala
@@ -28,6 +28,10 @@ import org.apache.spark.{TaskContext, ShuffleDependency}
* boolean isDriver as parameters.
*/
private[spark] trait ShuffleManager {
+
+ /** Return short name for the ShuffleManager */
+ val shortName: String
+
/**
* Register a shuffle with the manager and obtain a handle for it to pass to tasks.
*/
diff --git a/core/src/main/scala/org/apache/spark/shuffle/hash/HashShuffleManager.scala b/core/src/main/scala/org/apache/spark/shuffle/hash/HashShuffleManager.scala
index d2e2fc4c11..4f30da0878 100644
--- a/core/src/main/scala/org/apache/spark/shuffle/hash/HashShuffleManager.scala
+++ b/core/src/main/scala/org/apache/spark/shuffle/hash/HashShuffleManager.scala
@@ -34,6 +34,8 @@ private[spark] class HashShuffleManager(conf: SparkConf) extends ShuffleManager
private val fileShuffleBlockResolver = new FileShuffleBlockResolver(conf)
+ override val shortName: String = "hash"
+
/* Register a shuffle with the manager and obtain a handle for it to pass to tasks. */
override def registerShuffle[K, V, C](
shuffleId: Int,
diff --git a/core/src/main/scala/org/apache/spark/shuffle/sort/SortShuffleManager.scala b/core/src/main/scala/org/apache/spark/shuffle/sort/SortShuffleManager.scala
index 66b6bbc61f..9b1a279528 100644
--- a/core/src/main/scala/org/apache/spark/shuffle/sort/SortShuffleManager.scala
+++ b/core/src/main/scala/org/apache/spark/shuffle/sort/SortShuffleManager.scala
@@ -79,6 +79,8 @@ private[spark] class SortShuffleManager(conf: SparkConf) extends ShuffleManager
*/
private[this] val numMapsForShuffle = new ConcurrentHashMap[Int, Int]()
+ override val shortName: String = "sort"
+
override val shuffleBlockResolver = new IndexShuffleBlockResolver(conf)
/**
diff --git a/core/src/main/scala/org/apache/spark/storage/BlockManager.scala b/core/src/main/scala/org/apache/spark/storage/BlockManager.scala
index ed05143877..540e1ec003 100644
--- a/core/src/main/scala/org/apache/spark/storage/BlockManager.scala
+++ b/core/src/main/scala/org/apache/spark/storage/BlockManager.scala
@@ -200,7 +200,7 @@ private[spark] class BlockManager(
val shuffleConfig = new ExecutorShuffleInfo(
diskBlockManager.localDirs.map(_.toString),
diskBlockManager.subDirsPerLocalDir,
- shuffleManager.getClass.getName)
+ shuffleManager.shortName)
val MAX_ATTEMPTS = 3
val SLEEP_TIME_SECS = 5