Description
when I create table like this: "create table test (id varchar not null primary key, f.name varchar, f.email varchar, f.email varchar)", this will cause an org.apache.phoenix.schema.ColumnAlreadyExistsException, but the table is successful created.
Then I run a query like "select * from test", an exception is threw:
Caused by: java.lang.ArrayIndexOutOfBoundsException: 3
at org.apache.phoenix.schema.PTableImpl.init(PTableImpl.java:283)
at org.apache.phoenix.schema.PTableImpl.<init>(PTableImpl.java:216)
at org.apache.phoenix.schema.PTableImpl.makePTable(PTableImpl.java:209)
at org.apache.phoenix.coprocessor.MetaDataEndpointImpl.getTable(MetaDataEndpointImpl.java:443)
at org.apache.phoenix.coprocessor.MetaDataEndpointImpl.buildTable(MetaDataEndpointImpl.java:254)
at org.apache.phoenix.coprocessor.MetaDataEndpointImpl.doGetTable(MetaDataEndpointImpl.java:1077)
at org.apache.phoenix.coprocessor.MetaDataEndpointImpl.getTable(MetaDataEndpointImpl.java:1023)
... 10 more
then I try to drop the table: "drop table test", an exception is also threw:
Caused by: java.lang.ArrayIndexOutOfBoundsException: 3
at org.apache.phoenix.schema.PTableImpl.init(PTableImpl.java:283)
at org.apache.phoenix.schema.PTableImpl.<init>(PTableImpl.java:216)
at org.apache.phoenix.schema.PTableImpl.makePTable(PTableImpl.java:209)
at org.apache.phoenix.coprocessor.MetaDataEndpointImpl.getTable(MetaDataEndpointImpl.java:443)
at org.apache.phoenix.coprocessor.MetaDataEndpointImpl.buildTable(MetaDataEndpointImpl.java:254)
at org.apache.phoenix.coprocessor.MetaDataEndpointImpl.doGetTable(MetaDataEndpointImpl.java:1077)
at org.apache.phoenix.coprocessor.MetaDataEndpointImpl.getTable(MetaDataEndpointImpl.java:1023)
... 10 more
So I have to drop SYSTEM.CATALOG, SYSTEM.SEQUENCE from hbase shell……
The ArrayIndexOutOfBoundsException is threw out because the position of f.email column in CATALOG table is not correct. I think it's better to check columns before creating table.
Attachments
Attachments
Issue Links
- is duplicated by
-
PHOENIX-3196 Array Index Out Of Bounds Exception
- Resolved