wangkai created PHOENIX-930:
-------------------------------

             Summary: duplicated columns cause query exception and drop table 
exception
                 Key: PHOENIX-930
                 URL: https://issues.apache.org/jira/browse/PHOENIX-930
             Project: Phoenix
          Issue Type: Bug
    Affects Versions: 3.0.0
            Reporter: wangkai


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.






--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to