Github user budde commented on a diff in the pull request:
https://github.com/apache/spark/pull/17467#discussion_r112764344
--- Diff:
external/kinesis-asl/src/main/scala/org/apache/spark/streaming/kinesis/KinesisBackedBlockRDD.scala
---
@@ -83,7 +86,8 @@ class KinesisBackedBlockRDD[T: ClassTag](
@transient private val isBlockIdValid: Array[Boolean] = Array.empty,
val retryTimeoutMs: Int = 10000,
val messageHandler: Record => T =
KinesisInputDStream.defaultMessageHandler _,
- val kinesisCreds: SparkAWSCredentials = DefaultCredentials
+ val kinesisCreds: SparkAWSCredentials = DefaultCredentials,
+ val sparkConf: SparkConf = new SparkConf()
--- End diff --
Why does this need to be provided as a constructor parameter? You'll want
to use the global ```SparkConf``` for the context via ```sc.getConf```. To
avoid bringing ```sc``` into the serialized closure for the ```compute()```
method and raising an exception you can alias it as a private field in this
class:
```scala
private val sparkConf: SparkConf = sc.getConf
```
---
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]