phoenix-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From James Heather <james.heat...@mendeley.com>
Subject Re: index creation partly succeeds if it times out
Date Fri, 11 Sep 2015 10:34:41 GMT
Hi Rajeshbabu,

Thanks--yes--I've done that. I'm now recreating the index with a long 
timeout.

I reported it because it seemed to me to be a bug: Phoenix thinks that 
the index is there, but it's not. It ought to get cleaned up after a 
timeout.

James

On 11/09/15 11:32, rajeshbabu@apache.org wrote:
> Hi James,
>
> You can drop the partially created index and try following steps
>
> 1) Add the following property to hbase-site.xml at phoenix client side.
> <property>
> <name>phoenix.query.timeoutMs</name>
> <value>double of default value</value>
> </property>
> 2) Export the HBASE_CONF_PATH with the configuration directory where 
> hbase-site.xml present.
> 3) then start sqlline.py command prompt
> 4) Then run create index query.
>
>
> Thanks,
> Rajeshbabu.
>
> On Fri, Sep 11, 2015 at 3:26 PM, James Heather 
> <james.heather@mendeley.com <mailto:james.heather@mendeley.com>> wrote:
>
>     I just tried to create an index on a column for a table with 200M
>     rows. Creating the index timed out:
>
>         0: jdbc:phoenix:172.31.31.143> CREATE INDEX idx_lastname ON loadtest.testing
(lastname);
>
>         Error: Operation timed out (state=TIM01,code=6000)
>
>         java.sql.SQLTimeoutException: Operation timed out
>
>              at org.apache.phoenix.exception.SQLExceptionCode$14.newException(SQLExceptionCode.java:314)
>
>              at org.apache.phoenix.exception.SQLExceptionInfo.buildException(SQLExceptionInfo.java:133)
>
>
>     I bumped up the timeout and tried again, but it failed, and it
>     tells me the index already exists:
>
>         0: jdbc:phoenix:172.31.31.143> CREATE INDEX idx_lastname ON loadtest.testing
(lastname);
>
>         Error: ERROR 1013 (42M04): Table already exists. tableName=LOADTEST.IDX_LASTNAME
(state=42M04,code=1013)
>
>         org.apache.phoenix.schema.TableAlreadyExistsException: ERROR 1013 (42M04): Table
already exists. tableName=LOADTEST.IDX_LASTNAME
>
>              at org.apache.phoenix.schema.MetaDataClient.createTableInternal(MetaDataClient.java:1692)
>
>              at org.apache.phoenix.schema.MetaDataClient.createIndex(MetaDataClient.java:1118)
>
>              at org.apache.phoenix.compile.CreateIndexCompiler$1.execute(CreateIndexCompiler.java:95)
>
>              at org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:280)
>
>              at org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:272)
>
>              at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53)
>
>              at org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:271)
>
>              at org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:1063)
>
>              at sqlline.Commands.execute(Commands.java:822)
>
>              at sqlline.Commands.sql(Commands.java:732)
>
>              at sqlline.SqlLine.dispatch(SqlLine.java:808)
>
>              at sqlline.SqlLine.begin(SqlLine.java:681)
>
>              at sqlline.SqlLine.start(SqlLine.java:398)
>
>              at sqlline.SqlLine.main(SqlLine.java:292)
>
>         0: jdbc:phoenix:172.31.31.143> !indexes loadtest.testing
>
>         +------------------------------------------+------------------------------------------+------------------------------------------+------------------------------------------+-----------------+------------------------------------------+------------+---------------------------+
>
>         |                TABLE_CAT                 |               TABLE_SCHEM      
         |                TABLE_NAME                |                NON_UNIQUE          
     | INDEX_QUALIFIER |                INDEX_NAME                |    TYPE    |         
   ORDINAL_POSIT |
>
>         +------------------------------------------+------------------------------------------+------------------------------------------+------------------------------------------+-----------------+------------------------------------------+------------+---------------------------+
>
>         |                                          | LOADTEST                       
         | TESTING                                  | true                               
     |                 | IDX_LASTNAME                             | 3          | 1       
                 |
>
>         |                                          | LOADTEST                       
         | TESTING                                  | true                               
     |                 | IDX_LASTNAME                             | 3          | 2       
                 |
>
>         +------------------------------------------+------------------------------------------+------------------------------------------+------------------------------------------+-----------------+------------------------------------------+------------+---------------------------+
>
>         0: jdbc:phoenix:172.31.31.143>
>
>
>     Is this a bug? I don't really see how the index can be in a usable
>     state. If I 'explain' a query that ought to use the index, it
>     tells me it's going to do a full scan anyway.
>
>     James
>
>


Mime
View raw message