相信我这个,我已经尝试过辛苦劳累的日夜,但只是无法掌握这个任务不可序列化的错误,现在完全吃掉了我!。
我知道在SO上有很多类似的问题,但要么我真的太愚蠢了(我不希望这里有任何勺子喂食),或者我完全是一个不同的错误故事。
完全要求你们看看这个:
class RootServer(val config: Config) extends Configurable with Server with Serializable {
var PKsAffectedDF: DataFrame = dataSource.getAffectedPKs(prevBookMark,currBookMark)
if(PKsAffectedDF.rdd.isEmpty()){
Holder.log.info("[SQL] no records to upsert in the internal Status Table == for bookmarks : "+prevBookMark+" ==and== "+currBookMark+" for table == "+dataSource.db+"_"+dataSource.table)
}
val PKsAffectedDF_json = PKsAffectedDF.toJSON
PKsAffectedDF_json.foreachPartition { partitionOfRecords => {
var props = new Properties()
props.put('','')
props.put('','')
props.put('','')
props.put('','')
val producer = new KafkaProducer[String,String](props)
partitionOfRecords.foreach
{
case x:String=>{
println(x)
val message=new ProducerRecord[String, String]("[TOPIC] "+dbname+"_"+dbtable,dbname,x)
producer.send(message)
}
}
}
}
}
现在Config是typesafe.config类,我认为它是可序列化的,而服务器类是一个基本的抽象类,只有两个方法。我完全陷入了以下堆栈跟踪:
http://pastebin.com/5yPA1s7e很抱歉粘贴它,但整个堆栈跟踪就在那里。
先谢谢你。