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

James Taylor commented on PHOENIX-2221:
---------------------------------------

Thanks for the updates, [~ayingshu].

bq. KillServerOnFailurePolicy has the implementation that when updating index 
failed, abort the region server. Need KillServerOnFailurePolicy for not 
reimplementing abort() when catching failed exception.
The KillServerOnFailurePolicy is just a few lines of code. Just have you 
implementation do what you need it to do. Don't depend on 
KillServerOnFailurePolicy

bq. There are three possible values for INDEX_RECOVERY_FAILURE_POLICY_KEY: 
null, ReadableIndexFailedPolicy and default(PhoenixIndexFailedPolicy). Just use 
IndexFailurePolicy.class.getName() will not set the correct value for 
IndexWriter.INDEX_FAILURE_POLICY_CONF_KEY which is used for indexer committer 
later to determine the policy.
The code there is only setting the value if it's not set (essentially using 
IndexFailurePolicy as the default). In your case, if a user wants to use this 
new feature, they'd had set the INDEX_FAILURE_POLICY_CONF_KEY, so the 
setIfUnset call wouldn't do anything.

Other changes make sense - thanks for the explanation.


> Option to make data regions not writable when index regions are not available
> -----------------------------------------------------------------------------
>
>                 Key: PHOENIX-2221
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-2221
>             Project: Phoenix
>          Issue Type: Improvement
>            Reporter: Devaraj Das
>            Assignee: Alicia Ying Shu
>         Attachments: PHOENIX-2221-v1.patch, PHOENIX-2221-v2.patch, 
> PHOENIX-2221.patch
>
>
> In one usecase, it was deemed better to not accept writes when the index 
> regions are unavailable for any reason (as opposed to disabling the index and 
> the queries doing bigger data-table scans).
> The idea is that the index regions are kept consistent with the data regions, 
> and when a query runs against the index regions, one can be reasonably sure 
> that the query ran with the most recent data in the data regions. When the 
> index regions are unavailable, the writes to the data table are rejected. 
> Read queries off of the index regions would have deterministic performance 
> (and on the other hand if the index is disabled, then the read queries would 
> have to go to the data regions until the indexes are rebuilt, and the queries 
> would suffer).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to