Skip to content

Commit c01c450

Browse files
committed
Return Try[Message] from sendMessageReliablySync.
This forces callers to consider error handling.
1 parent f1cd1bb commit c01c450

File tree

3 files changed

+9
-9
lines changed

3 files changed

+9
-9
lines changed

core/src/main/scala/org/apache/spark/network/ConnectionManager.scala

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ import scala.collection.mutable.SynchronizedQueue
3535
import scala.concurrent.{Await, ExecutionContext, Future, Promise}
3636
import scala.concurrent.duration._
3737
import scala.language.postfixOps
38+
import scala.util.Try
3839

3940
import org.apache.spark._
4041
import org.apache.spark.util.{SystemClock, Utils}
@@ -849,8 +850,8 @@ private[spark] class ConnectionManager(port: Int, conf: SparkConf,
849850
}
850851

851852
def sendMessageReliablySync(connectionManagerId: ConnectionManagerId,
852-
message: Message): Message = {
853-
Await.result(sendMessageReliably(connectionManagerId, message), Duration.Inf)
853+
message: Message): Try[Message] = {
854+
Try(Await.result(sendMessageReliably(connectionManagerId, message), Duration.Inf))
854855
}
855856

856857
def onReceiveMessage(callback: (Message, ConnectionManagerId) => Option[Message]) {

core/src/main/scala/org/apache/spark/network/SenderTest.scala

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
package org.apache.spark.network
1919

2020
import java.nio.ByteBuffer
21-
import scala.util.Try
2221
import org.apache.spark.{SecurityManager, SparkConf}
2322

2423
private[spark] object SenderTest {
@@ -52,7 +51,7 @@ private[spark] object SenderTest {
5251
val dataMessage = Message.createBufferMessage(buffer.duplicate)
5352
val startTime = System.currentTimeMillis
5453
/* println("Started timer at " + startTime) */
55-
val responseStr = Try(manager.sendMessageReliablySync(targetConnectionManagerId, dataMessage))
54+
val responseStr = manager.sendMessageReliablySync(targetConnectionManagerId, dataMessage)
5655
.map { response =>
5756
val buffer = response.asInstanceOf[BufferMessage].buffers(0)
5857
new String(buffer.array, "utf-8")

core/src/main/scala/org/apache/spark/storage/BlockManagerWorker.scala

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import org.apache.spark.Logging
2323
import org.apache.spark.network._
2424
import org.apache.spark.util.Utils
2525

26-
import scala.util.{Failure, Success, Try}
26+
import scala.util.{Failure, Success}
2727

2828
/**
2929
* A network interface for BlockManager. Each slave should have one
@@ -117,8 +117,8 @@ private[spark] object BlockManagerWorker extends Logging {
117117
val connectionManager = blockManager.connectionManager
118118
val blockMessage = BlockMessage.fromPutBlock(msg)
119119
val blockMessageArray = new BlockMessageArray(blockMessage)
120-
val resultMessage = Try(connectionManager.sendMessageReliablySync(
121-
toConnManagerId, blockMessageArray.toBufferMessage))
120+
val resultMessage = connectionManager.sendMessageReliablySync(
121+
toConnManagerId, blockMessageArray.toBufferMessage)
122122
resultMessage.isSuccess
123123
}
124124

@@ -127,8 +127,8 @@ private[spark] object BlockManagerWorker extends Logging {
127127
val connectionManager = blockManager.connectionManager
128128
val blockMessage = BlockMessage.fromGetBlock(msg)
129129
val blockMessageArray = new BlockMessageArray(blockMessage)
130-
val responseMessage = Try(connectionManager.sendMessageReliablySync(
131-
toConnManagerId, blockMessageArray.toBufferMessage))
130+
val responseMessage = connectionManager.sendMessageReliablySync(
131+
toConnManagerId, blockMessageArray.toBufferMessage)
132132
responseMessage match {
133133
case Success(message) => {
134134
val bufferMessage = message.asInstanceOf[BufferMessage]

0 commit comments

Comments
 (0)