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

Ankit Singhal edited comment on PHOENIX-4785 at 6/15/18 11:54 PM:
------------------------------------------------------------------

bq. T3.  Client B exhausts retries, marks index disabled with disabletimestamp 
of T0.  Rebuilder will rebuild as of T0.
But still there is a problem, if client B goes away without making index 
disabled, index will stay in ACTIVE state all the time.

How about keeping a count of PENDING_DISABLE? which we will be incrementing 
atomically on every PENDING_DISABLE call and decrementing it on ACTIVE call , 
if count=0 make it ACTIVE otherwise keep it PENDING_DISABLE. 
And if the client goes away ,use the same threshold for last PENDING_DISABLE 
call to make PENDING_DISABLE to DISABLE. WDYT?



was (Author: an...@apache.org):
bq. T3.  Client B exhausts retries, marks index disabled with disabletimestamp 
of T0.  Rebuilder will rebuild as of T0.
But still there is a problem, if client B goes away without making index 
disabled, index will stay in ACTIVE state all the time.

How about keeping a count of PENDING_DISABLE? which we will be incremented 
atomically on every PENDING_DISABLE call and decrement it on ACTIVE call , if 
count=0 make it ACTIVE otherwise keep it PENDING_DISABLE. 
And use the same threshold for last PENDING_DISABLE call to make 
PENDING_DISABLE to DISABLE. WDYT?


> Unable to write to table if index is made active during retry
> -------------------------------------------------------------
>
>                 Key: PHOENIX-4785
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4785
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.14.0
>            Reporter: Romil Choksi
>            Assignee: Vincent Poon
>            Priority: Blocker
>             Fix For: 5.0.0, 4.14.1
>
>         Attachments: PHOENIX-4785.v1.master.patch, PHOENIX-4785_test.patch
>
>
> After PHOENIX-4130, we are unable to write to a table if an index is made 
> ACTIVE during the retry as client timestamp is not cleared when table state 
> is changed from PENDING_DISABLE to ACTIVE even if our policy is not to block 
> writes on data table in case of write failure for index.



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

Reply via email to