You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@phoenix.apache.org by "Rajeshbabu Chintaguntla (Jira)" <ji...@apache.org> on 2020/04/02 06:26:00 UTC

[jira] [Commented] (PHOENIX-5794) Create a threshold for non async index creation, that can be modified in configs

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

Rajeshbabu Chintaguntla commented on PHOENIX-5794:
--------------------------------------------------

[~RichardAntal] 
- To verify the threshold you are considering only the columns in index pk constraint but there are other include columns for covered indexes and need compare the size of those column families crossing the threshold. There are columnDefs already collected from the all the columns in the index so better to get the column families from the columnDefs so you need not write much logic to identify the columns of all the cases. 
You can use *IndexUtil.getDataColumnFamilyName* by passing the index column names in ColumnDef.
And also better to add the covered indexes in the test cases also.

{noformat}
+    ABOVE_INDEX_NON_ASYNC_THRESHOLD(1097, "44A34", "The estimated read size for index creation "
+            + "is higher than phoenix.index.async.threshold. You can edit the limit or create"
+            + " ASYNC index."),
{noformat}
Here use QueryServices.CLIENT_INDEX_ASYNC_THRESHOLD constant defined instead of phoenix.index.async.threshold.

-  Check whether the index is not async already and i think currently in the test case you need to create async index also so that async creation also should not block.
{noformat}
+            if (threshold > 0) {
{noformat}

to 
{noformat}
+            if (threshold > 0 && statement.isAsync()) {
{noformat}





> Create a threshold for non async index creation, that can be modified in configs
> --------------------------------------------------------------------------------
>
>                 Key: PHOENIX-5794
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-5794
>             Project: Phoenix
>          Issue Type: Improvement
>            Reporter: Richard Antal
>            Assignee: Richard Antal
>            Priority: Major
>         Attachments: PHOENIX-5794.master.v1.patch, PHOENIX-5794.master.v2.patch, PHOENIX-5794.master.v3.patch, PHOENIX-5794.master.v4.patch, PHOENIX-5794.master.v5.patch, PHOENIX-5794.master.v6.patch
>
>
> Issue:
> When user try to create an index on a huge phoenix table the region servers crashed which led to multiple regions going in RIT state. 
>  
> Solution:
> If the expected byte read size is higher than the limit we raise an exception to notify the user that the index should be created asynchronously.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)