class ExternalBlockHandler extends RpcHandler
RPC Handler for a server which can serve both RDD blocks and shuffle blocks from outside of an Executor process.
Handles registering executors and opening shuffle or disk persisted RDD blocks from them. Blocks are registered with the "one-for-one" strategy, meaning each Transport-layer Chunk is equivalent to one block.
- Alphabetic
- By Inheritance
- ExternalBlockHandler
- RpcHandler
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
ExternalBlockHandler(streamManager: OneForOneStreamManager, blockManager: ExternalShuffleBlockResolver)
Enables mocking out the StreamManager and BlockManager.
- new ExternalBlockHandler(conf: TransportConf, registeredExecutorFile: File)
Type Members
-
class
ShuffleMetrics extends MetricSet
A simple class to wrap all shuffle service wrapper metrics
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
applicationRemoved(appId: String, cleanupLocalDirs: Boolean): Unit
Removes an application (once it has been terminated), and optionally will clean up any local directories associated with the executors of that application in a separate thread.
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
channelActive(client: TransportClient): Unit
- Definition Classes
- ExternalBlockHandler → RpcHandler
-
def
channelInactive(client: TransportClient): Unit
- Definition Classes
- ExternalBlockHandler → RpcHandler
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
- def close(): Unit
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
exceptionCaught(cause: Throwable, client: TransportClient): Unit
- Definition Classes
- ExternalBlockHandler → RpcHandler
-
def
executorRemoved(executorId: String, appId: String): Unit
Clean up any non-shuffle files in any local directories associated with an finished executor.
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- def getAllMetrics(): MetricSet
- def getBlockResolver(): ExternalShuffleBlockResolver
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
getStreamManager(): StreamManager
- Definition Classes
- ExternalBlockHandler → RpcHandler
-
def
handleMessage(msgObj: BlockTransferMessage, client: TransportClient, callback: RpcResponseCallback): Unit
- Attributes
- protected[shuffle]
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
receive(client: TransportClient, message: ByteBuffer, callback: RpcResponseCallback): Unit
- Definition Classes
- ExternalBlockHandler → RpcHandler
-
def
receive(arg0: TransportClient, arg1: ByteBuffer): Unit
- Definition Classes
- RpcHandler
-
def
receiveStream(arg0: TransportClient, arg1: ByteBuffer, arg2: RpcResponseCallback): StreamCallbackWithID
- Definition Classes
- RpcHandler
-
def
reregisterExecutor(appExecId: AppExecId, executorInfo: ExecutorShuffleInfo): Unit
Register an (application, executor) with the given shuffle info.
Register an (application, executor) with the given shuffle info.
The "re-" is meant to highlight the intended use of this method -- when this service is restarted, this is used to restore the state of executors from before the restart. Normal registration will happen via a message handled in receive()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()