phoenix-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vincent Poon (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PHOENIX-5080) Index becomes Active during Partial Index Rebuilder if Index Failure happens
Date Fri, 25 Jan 2019 21:54:00 GMT

    [ https://issues.apache.org/jira/browse/PHOENIX-5080?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16752713#comment-16752713
] 

Vincent Poon commented on PHOENIX-5080:
---------------------------------------

[~mihir6692] Can you write the test without the Thread.sleep?  In particular I'm concerned
about  Thread.sleep(WAIT_AFTER_DISABLED+1); 
Such sleeps can make tests non-deterministic , depending on the environment on which it's
run

> Index becomes Active during Partial Index Rebuilder if Index Failure happens
> ----------------------------------------------------------------------------
>
>                 Key: PHOENIX-5080
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-5080
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.14.1
>            Reporter: Monani Mihir
>            Assignee: Monani Mihir
>            Priority: Blocker
>         Attachments: PHOENIX-5080-4.x-HBase-1.3.01.patch, PHOENIX-5080-4.x-HBase-1.3.02.patch,
PHOENIX-5080-4.x-HBase-1.3.02.patch, PHOENIX-5080-4.x-HBase-1.3.03.patch
>
>
> 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 :- 
> {code:java}
> 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);
> }
> {code}
>  
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message