spark grpc 在master运行报错 exitcode13 User did not initialize spark context

程序使用sparksql 以及protobuf grpc ,执行报错

ApplicationMaster: Final app status: FAILED, exitCode: 13, (reason: Uncaught exception: java.lang.IllegalStateException: User did not initialize spark context!

先说原因 :

  • 1.使用了不具备权限的用户,spark运行环境有缺失
  • 2.protobuf 需要使用指定操作系统进行编译 未使用 os.detected.classifier=windows-x86_64 或 linux-x86_64,或者把windows上编译的jar直接拿过来使用导致
  • 3.protobuf的版本不太合适 这个比较坑,得多注意
  • 4.代码中指定了运行模式是local( 这个因为没写local,没遇到 )

解决

  • 1.使用root用户,或者将当前用户加入到sudo 权限范围,之后sudo执行
  • 2.本机 编译的放到linux执行会报错,因此需要在master节点编译 指定os.detected.classifier=linux-x86_64 例如 maven执行的命令
  • mvn clean package -P prod -Dos.detected.classifier=linux-x86_64 -Dmaven.test.skip=true

    1. pom中版本调整
  • protobuf-maven-plugin 0.6.1 降到 0.5.0 同时 io.grpc:protoc-gen-grpc-java:1.54.0 com.google.protobuf:protoc:21.0-rc-1

    升版本 0.5.0升到 0.6.1 同时 io.grpc:protoc-gen-grpc-java:3.21.9 com.google.protobuf:protoc:3.21.9

  • 4.去掉 sparksession指定local的运行设定代码
  • etc: 中间也出现过 编译问题 "protoc CreateProcess error=216, 该版本的 %1 与您运行的 Windows 版本不兼容",这个的处理就不说了。
相关推荐
超级新零售2 小时前
AI 零售软件是什么?从库存提醒到智能调货的系统分工
大数据·人工智能·零售
sun153690275723 小时前
基坑边坡监测:振弦式土压力计选型、安装埋设与数据采集方案
大数据·物联网·自动化
真上帝的左手3 小时前
30. 技术专题-‌应用框架组件-关系型数据库-MySQL-Mybatis
数据库·分布式·mysql·中间件·mybatis
程序猿乐锅4 小时前
万字详解Single-flight(单飞模式)
java·开发语言·分布式·后端·学习·single-flight
数字新视界4 小时前
机房动环监控系统在提升数据中心能效与安全中的应用探索
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
roman_日积跬步-终至千里4 小时前
零售与数仓(四):指标定义——从业务问题到可信计算
大数据·零售
AntsData4 小时前
用 12K+ 条亚马逊评论信号,定位机械键盘下一版该改什么
java·大数据·计算机外设
蓝鲨硬科技5 小时前
Token之后,物理AI需要什么样的度量衡?
大数据·人工智能
GlobalInfo5 小时前
管道检测机器人行业调查、市场规模、排名分析报告2026-2032
大数据·人工智能·机器人
sunny06605 小时前
推理 INFRA 方法论(2):分布式推理:TP、DP、EP、CP 与 PP 的取舍
人工智能·分布式