文档首页/ MapReduce服务 MRS/ 故障排除/ 使用Spark/ JDK版本不匹配导致启动spark-sql和spark-shell失败
更新时间:2023-11-10 GMT+08:00

JDK版本不匹配导致启动spark-sql和spark-shell失败

问题背景与现象

JDK版本不匹配导致客户端启动spark-sql、spark-shell失败。

原因分析

  1. 在Driver端打印异常如下:
    Exception Occurs: BadPadding 16/02/22 14:25:38 ERROR Schema: Failed initialising database. Unable to open a test connection to the given database. JDBC url = jdbc:postgresql://ip:port/sparkhivemeta, username = spark. Terminating connection pool (set lazyInit to true if you expect to start your database after your app). 
  2. SparkSQL任务使用时,需要访问DBService以获取元数据信息,在客户端需要解密密文来访问,在使用过程中,用户没有按照流程操作,没有执行配置环境变量操作,且在其客户端环境变量中存在默认的JDK版本,导致在执行解密过程中调用的解密程序执行解密异常,导致用户被锁。

解决办法

  1. 使用which java命令查看默认的JAVA命令是否是客户端的JAVA。
  2. 如果不是,请按正常的客户端执行流程。

    source ${client_path}/bigdata_env

    kinit 用户名,然后输入用户名对应的密码,启动任务即可。