
# 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** *用户名*，然后输入用户名对应的密码，启动任务即可。
   
   
 
