[ https://issues.apache.org/jira/browse/PHOENIX-4215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16171999#comment-16171999 ]
Rajeshbabu Chintaguntla commented on PHOENIX-4215: -------------------------------------------------- The reason for the partial index rebuilding not moving forward because PhoenixRuntime#getTableNoCache always get the index from the server cache but not scanned from system catalog directly and one more thing is for updating disable timestamp wit HRegion#checkAndPut which doesn't invalidate the cache and server so we always see the same disable timestamp for index. Because of this scanBeginTime and scanEndTime for index rebuild are same in each iterator that's why we won't move forward and after some time of threshold we go ahead and disable the index permanently. {noformat} PTable indexPTable = PhoenixRuntime.getTableNoCache(conn, indexTableFullName); {noformat} {noformat} private static boolean updateDisableTimestamp(PhoenixConnection conn, String indexTableName, long disabledTimestamp, HTableInterface metaTable, long expectedDisabledTimestamp) throws IOException { byte[] indexTableKey = SchemaUtil.getTableKeyFromFullName(indexTableName); Put put = new Put(indexTableKey); put.addColumn(PhoenixDatabaseMetaData.TABLE_FAMILY_BYTES, PhoenixDatabaseMetaData.INDEX_DISABLE_TIMESTAMP_BYTES, PLong.INSTANCE.toBytes(disabledTimestamp)); return metaTable.checkAndPut(indexTableKey, PhoenixDatabaseMetaData.TABLE_FAMILY_BYTES, PhoenixDatabaseMetaData.INDEX_DISABLE_TIMESTAMP_BYTES, CompareOp.EQUAL, PLong.INSTANCE.toBytes(expectedDisabledTimestamp), put); } {noformat} > Partial index rebuild never complete after PHOENIX-3525 when rebuild period > is configured > ----------------------------------------------------------------------------------------- > > Key: PHOENIX-4215 > URL: https://issues.apache.org/jira/browse/PHOENIX-4215 > Project: Phoenix > Issue Type: Bug > Reporter: Rajeshbabu Chintaguntla > Assignee: Rajeshbabu Chintaguntla > Fix For: 4.12.0 > > Attachments: PHOENIX-4215_testcase.patch > > > Currently the default value of phoenix.index.failure.handling.rebuild.period > is long max. When we configure it some thing like an hour or day then partial > index rebuild never complete and the index is never usable until recreate it. -- This message was sent by Atlassian JIRA (v6.4.14#64029)