Description
After PHOENIX-4130 and PHOENIX-4600 , If there is Index failure during Partial Index Rebuild, Rebuilder will try again to write Index updates. If it succeeds then it will transition Index from INACTIVE to ACTIVE, even before Rebuilder finishes.
Here is where it goes wrong, I think :-
PhoenixIndexFailurePolicy.java :- public static void doBatchWithRetries(MutateCommand mutateCommand, IndexWriteException iwe, PhoenixConnection connection, ReadOnlyProps config) throws IOException { .... while (canRetryMore(numRetry++, maxTries, canRetryUntil)) { ... handleIndexWriteSuccessFromClient(iwe, connection); ... } } .... private static void handleIndexWriteSuccessFromClient(IndexWriteException indexWriteException, PhoenixConnection conn) { handleExceptionFromClient(indexWriteException, conn, PIndexState.ACTIVE); }
Attachments
Attachments
Issue Links
- relates to
-
PHOENIX-5079 PhoenixIndexMetaData.isIndexRebuild gives wrong results in Partial Index Rebuilding
-
- Resolved
-