EsgynDB Troubleshooting-java.io.IOException: java.util.NoSuchElementException

现象

EsgynDB在做版本升级以后,发现无法查看backup tag,报错信息如下,

SQL>get all backup tags;

*** ERROR[5050] GET BACKUP TAGS command could not be completed. Reason: Error returned during list all backups. See next error for details. [2019-11-20 19:06:09]
*** ERROR[8448] Unable to access Hbase interface. Call to ExpHbaseInterface::listAllBackups returned error HBASE_GET_BACKUP_ERROR(731). Cause: java.io.IOException: java.io.IOException: java.io.IOException: java.util.NoSuchElementException
org.apache.hadoop.hbase.pit.BackupRestoreClient.listAllBackups(BackupRestoreClient.java:6009) Caused by 
java.io.IOException: java.io.IOException: java.util.NoSuchElementException
org.apache.hadoop.hbase.pit.SnapshotMeta.listSnapshotStartRecords(SnapshotMeta.java:2082)
org.apache.hadoop.hbase.pit.BackupRestoreClient.listAllBackups(BackupRestoreClient.java:5926) Caused by 
java.io.IOException: java.util.NoSuchElementException
org.apache.hadoop.hbase.pit.SnapshotMeta.listSnapshotStartRecords(SnapshotMeta.java:2074)
org.apache.hadoop.hbase.pit.BackupRestoreClient.listAllBackups(BackupRestoreClient.java:5926) Caused by 
java.util.NoSuchElementException
java.util.StringTokenizer.nextToken(StringTokenizer.java:349)
org.apache.hadoop.hbase.pit.SnapshotMeta.listSnapshotStartRecords(SnapshotMeta.java:2047)
org.apache.hadoop.hbase.pit.BackupRestoreClient.listAllBackups(BackupRestoreClient.java:5926). [2019-11-20 19:06:09]

解决

这个错误是由于在老版本备份的tag在新版本中无法识别导致,因此我们需要清理老版本的tag并在新版本中重新备份。
由于现在无法正常查看tag名称,我们选择直接从底层DTM表中删除tag并重启。步骤如下,

  1. 停止数据库
sqstop abrupt
  1. 删除DTM相关表
disable 'TRAF_RSRVD_5:TRAFODION._DTM_.MUTATION'
disable 'TRAF_RSRVD_5:TRAFODION._DTM_.SNAPSHOT'
disable 'TRAF_RSRVD_5:TRAFODION._DTM_.LOB_META_SHADOW'
disable 'TRAF_RSRVD_5:TRAFODION._DTM_.MUTATION_SHADOW'
drop 'TRAF_RSRVD_5:TRAFODION._DTM_.MUTATION'
drop 'TRAF_RSRVD_5:TRAFODION._DTM_.SNAPSHOT'
drop 'TRAF_RSRVD_5:TRAFODION._DTM_.LOB_META_SHADOW'
drop 'TRAF_RSRVD_5:TRAFODION._DTM_.MUTATION_SHADOW'
  1. 启动数据库
sqstart
  1. 重新验证查看tag命令
SQL>get all backup tags;
发布了352 篇原创文章 · 获赞 400 · 访问量 73万+

猜你喜欢

转载自blog.csdn.net/Post_Yuan/article/details/103805229
今日推荐