Phoenix在建表是报出java.lang.ArrayIndexOutOfBoundsException的处理方法
这算一个篇hello world。 碰到问题经常google到优快云的文章,但是从来不做分享,现在看来,有能力也是时候做一些力所能及的事情了。
首先说下,产生这个问题的原因是在建表语句里,有两列重名,这样SYSTEM.CATALOG表中因为rowkey的关系,分辨不出来到底哪个一才是唯一的列名
处理办法
1. 进入hbase shell
disable 'tablename'
drop 'tablename'
2. 进入phoenix sqlline
-- 先删掉关于这个表的描述
delete from SYSTEM."CATALOG" where TABLE_NAME='tablename';
-- 确认是否删除成功,如果成功删除会看不到这个tablename
'' select * from SYSTEM."CATALOG" where TABLE_NAME='tablename';