java.io.InvalidClassException(spark任务运行失败)

当遇到`java.io.InvalidClassException`错误时,通常是因为driver和executor的jar包不一致或存在多余jar。通过检查发现某个节点的spark目录存在多余jar包,移除后问题得到解决,确保了Spark任务执行时所有节点的jar包匹配,避免了版本冲突。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景:客户集群内偶尔会出现java.io.InvalidClassException: org.apache.kudu.spark.kudu.KuduRDD; local class incompatible: stream classdesc serialVersionUID = 1, local class serialVersionUID = 1738372855795541573,公司集群从未出现。

之前一直以为是版本问题,查找发现版本是一致的。
后查看yarn日志,发现只要报错的监控都跟某个节点相关。于是具体关注该节点

  1. 通过指令查看集群内的kudu相关包 在这里插入图片描述

  2. 发现报错的节点的spark目录有多余的jar 在这里插入图片描述
    移除后问题解决

  3. 原理spark任务运行时,driver节点的jar包和executor节点必须保持一致,出现此问题一般就是包版本冲突或者有多余的包

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值