火花结构化流写入错误

spark strucuted streaming write errors

我在消费和接收 kafka 消息时 运行 遇到了一些奇怪的错误。我是 运行 2.3.0,我知道这在其他一些版本之前是有效的。

val event = spark.readStream.format("kafka")
.option("kafka.bootstrap.servers", <server list>)
.option("subscribe", <topic>)
.load()

val filesink_query = outputdf.writeStream
.partitionBy(<some column>)
.format("parquet")
.option("path", <some path in EMRFS>)
.option("checkpointLocation", "/tmp/ingestcheckpoint")
.trigger(Trigger.ProcessingTime(10.seconds))
.outputMode(OutputMode.Append)
.start 



java.lang.IllegalStateException: /tmp/outputagent/_spark_metadata/0 doesn't exist when compacting batch 9 (compactInterval: 10)

我比较疑惑,这是最新版spark的错误吗?

问题似乎与在 s3a 上使用 S3n 以及仅在 hdfs 而不是 s3 上有检查点有关。这非常烦人,因为我想避免在我的代码中对 dns 或 ips 进行硬编码。