Created on
04-30-2020
03:02 AM
- last edited on
04-30-2020
03:32 AM
by
VidyaSargur
I have strange problem after HDP upgrade.
hbase shell working fine.
But zeppeling is not working.
It throws error:
%jdbc(phoenix)
select * from test limit 10
java.sql.SQLException: java.util.NoSuchElementException at org.apache.phoenix.query.ConnectionQueryServicesImpl.upgradeSystemTables(ConnectionQueryServicesImpl.java:3211)
In hbase shell i'm getting data.
After some researching, i found that phoenix-sqline is not working too.
I'm getting following messages as user hbase:
[hbase@edge-node] ~ $ phoenix-sqlline
Setting property: [incremental, false]
Setting property: [isolation, TRANSACTION_READ_COMMITTED]
issuing: !connect jdbc:phoenix: none none org.apache.phoenix.jdbc.PhoenixDriver
Connecting to jdbc:phoenix:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/hdp/3.1.4.0-315/phoenix/phoenix-5.0.0.3.1.4.0-315-client.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/3.1.4.0-315/hadoop/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
20/04/30 11:28:06 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
20/04/30 11:28:35 WARN query.ConnectionQueryServicesImpl: Starting restore of SYSTEM:CATALOG using snapshot SNAPSHOT_SYSTEM.CATALOG_4.7.x_TO_5.0.0_20200430112809 because upgrade failed
20/04/30 11:28:36 WARN query.ConnectionQueryServicesImpl: Successfully restored SYSTEM:CATALOG using snapshot SNAPSHOT_SYSTEM.CATALOG_4.7.x_TO_5.0.0_20200430112809
20/04/30 11:28:41 WARN query.ConnectionQueryServicesImpl: Successfully restored and enabled SYSTEM:CATALOG using snapshot SNAPSHOT_SYSTEM.CATALOG_4.7.x_TO_5.0.0_20200430112809
Error: java.util.NoSuchElementException (state=,code=0)
java.sql.SQLException: java.util.NoSuchElementException
And from root user:
[root@edge-node] /var/log/hbase # phoenix-sqlline
Setting property: [incremental, false]
Setting property: [isolation, TRANSACTION_READ_COMMITTED]
issuing: !connect jdbc:phoenix: none none org.apache.phoenix.jdbc.PhoenixDriver
Connecting to jdbc:phoenix:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/hdp/3.1.4.0-315/phoenix/phoenix-5.0.0.3.1.4.0-315-client.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/3.1.4.0-315/hadoop/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
20/04/30 11:37:57 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
20/04/30 11:38:01 WARN query.ConnectionQueryServicesImpl: Could not check for Phoenix SYSTEM tables, assuming they exist and are properly configured
Error: Operation not allowed since cluster hasn't been upgraded. Call EXECUTE UPGRADE. (state=INT13,code=2011)
org.apache.phoenix.exception.UpgradeRequiredException: Operation not allowed since cluster hasn't been upgraded. Call EXECUTE UPGRADE.
at org.apache.phoenix.query.ConnectionQueryServicesImpl.checkClientServerCompatibility(ConnectionQueryServicesImpl.java:1342)
What is wrong?
How can i debug and fix it?