Github user pwendell commented on a diff in the pull request:
https://github.com/apache/spark/pull/2940#discussion_r19497147
--- Diff:
streaming/src/main/scala/org/apache/spark/streaming/receiver/ReceiverSupervisorImpl.scala
---
@@ -44,12 +41,26 @@ import
org.apache.spark.streaming.scheduler.RegisterReceiver
*/
private[streaming] class ReceiverSupervisorImpl(
receiver: Receiver[_],
- env: SparkEnv
+ env: SparkEnv,
+ hadoopConf: Configuration,
+ checkpointDirOption: Option[String]
) extends ReceiverSupervisor(receiver, env.conf) with Logging {
- private val blockManager = env.blockManager
+ private val receivedBlockHandler: ReceivedBlockHandler = {
+ if
(env.conf.getBoolean("spark.streaming.receiver.writeAheadLog.enable", false)) {
+ if (checkpointDirOption.isEmpty) {
+ throw new SparkException(
+ "Cannot enable receiver write-ahead log without checkpoint
directory set. " +
--- End diff --
A bit off topic (and we can deal with this later) - but should we make the
checkpoint directory into a `sparkConf` setting? That way we could do this type
of validation earlier on. Right now unfortunately we can't distinguish here
whether the user didn't call `checkpoint` or whether there was just a bug
somewhere in Spark code.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]