You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "Alicia Ying Shu (JIRA)" <ji...@apache.org> on 2015/09/16 07:34:45 UTC

[jira] [Comment Edited] (PHOENIX-2221) Option to make data regions not writable when index regions are not available

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

Alicia Ying Shu edited comment on PHOENIX-2221 at 9/16/15 5:33 AM:
-------------------------------------------------------------------

Currently we disable an index when index update failed(still possible bring down the whole cluster), then rebuild the index. 

The patch adds the option of making data regions not writable when index regions are not available. Will rebuild an index partially from where it failed. During which, the index state becomes "readable". Reads can still use index, and writes will get an exception. It favors applications that has heavy reads and needs fast response for reads. 

To enable this option, add the following configuration into hbase-site.xml:
<property>
   <name>phoenix.index.failure.block.write</name>
   <value>true</value>
</property>

[~giacomotaylor] [~rajeshbabu] Would you please review this? Thanks. 


was (Author: aliciashu):
Currently we disable an index when index update failed(still possible bring down the whole cluster), then rebuild the index. 

The patch adds the option of making data regions not writable when index regions are not available. Will rebuild an index partially from where it failed. During which, the index state becomes "readable". Reads can still use index, and writes will get an exception. It favors applications that has heavy reads and needs fast response for reads. 

To enable this option, add the following configuration into hbase-site.xml:
<property>
   <name>phoenix.index.failure.block.write</name>
   <value>true</value>
</property>

> 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.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)