aboutsummaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/src/main/scala/org/apache/spark/util/Utils.scala2
-rw-r--r--core/src/test/scala/org/apache/spark/util/UtilsSuite.scala25
2 files changed, 15 insertions, 12 deletions
diff --git a/core/src/main/scala/org/apache/spark/util/Utils.scala b/core/src/main/scala/org/apache/spark/util/Utils.scala
index 6b85c03da5..eb4a598dbf 100644
--- a/core/src/main/scala/org/apache/spark/util/Utils.scala
+++ b/core/src/main/scala/org/apache/spark/util/Utils.scala
@@ -1700,7 +1700,7 @@ private[spark] object Utils extends Logging {
def isBindCollision(exception: Throwable): Boolean = {
exception match {
case e: BindException =>
- if (e.getMessage != null && e.getMessage.contains("Address already in use")) {
+ if (e.getMessage != null) {
return true
}
isBindCollision(e.getCause)
diff --git a/core/src/test/scala/org/apache/spark/util/UtilsSuite.scala b/core/src/test/scala/org/apache/spark/util/UtilsSuite.scala
index 8ffe3e2b13..f9d4bea823 100644
--- a/core/src/test/scala/org/apache/spark/util/UtilsSuite.scala
+++ b/core/src/test/scala/org/apache/spark/util/UtilsSuite.scala
@@ -22,6 +22,8 @@ import scala.util.Random
import java.io.{File, ByteArrayOutputStream, ByteArrayInputStream, FileOutputStream}
import java.net.{BindException, ServerSocket, URI}
import java.nio.{ByteBuffer, ByteOrder}
+import java.text.DecimalFormatSymbols
+import java.util.Locale
import com.google.common.base.Charsets.UTF_8
import com.google.common.io.Files
@@ -103,14 +105,16 @@ class UtilsSuite extends FunSuite {
val hour = minute * 60
def str = Utils.msDurationToString(_)
+ val sep = new DecimalFormatSymbols(Locale.getDefault()).getDecimalSeparator()
+
assert(str(123) === "123 ms")
- assert(str(second) === "1.0 s")
- assert(str(second + 462) === "1.5 s")
- assert(str(hour) === "1.00 h")
- assert(str(minute) === "1.0 m")
- assert(str(minute + 4 * second + 34) === "1.1 m")
- assert(str(10 * hour + minute + 4 * second) === "10.02 h")
- assert(str(10 * hour + 59 * minute + 59 * second + 999) === "11.00 h")
+ assert(str(second) === "1" + sep + "0 s")
+ assert(str(second + 462) === "1" + sep + "5 s")
+ assert(str(hour) === "1" + sep + "00 h")
+ assert(str(minute) === "1" + sep + "0 m")
+ assert(str(minute + 4 * second + 34) === "1" + sep + "1 m")
+ assert(str(10 * hour + minute + 4 * second) === "10" + sep + "02 h")
+ assert(str(10 * hour + 59 * minute + 59 * second + 999) === "11" + sep + "00 h")
}
test("reading offset bytes of a file") {
@@ -300,12 +304,11 @@ class UtilsSuite extends FunSuite {
assert(!Utils.isBindCollision(new Exception))
assert(!Utils.isBindCollision(new Exception(new Exception)))
assert(!Utils.isBindCollision(new Exception(new BindException)))
- assert(!Utils.isBindCollision(new Exception(new BindException("Random message"))))
// Positives
- val be = new BindException("Address already in use")
- val be1 = new Exception(new BindException("Address already in use"))
- val be2 = new Exception(new Exception(new BindException("Address already in use")))
+ val be = new BindException("Random Message")
+ val be1 = new Exception(new BindException("Random Message"))
+ val be2 = new Exception(new Exception(new BindException("Random Message")))
assert(Utils.isBindCollision(be))
assert(Utils.isBindCollision(be1))
assert(Utils.isBindCollision(be2))