You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@phoenix.apache.org by "Istvan Toth (Jira)" <ji...@apache.org> on 2022/03/23 08:11:00 UTC

[jira] [Commented] (PHOENIX-6673) Local indexing broken by manually splitting table at arbitrary point

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

Istvan Toth commented on PHOENIX-6673:
--------------------------------------

While the above behavior is probably intrinsic to how local indexing is implemented, we should still do more to avoid this problem:

- We may be able to add this functionality to IndexRegionSplitPolicy

- If that is not feasible for some reason, then we should at least document this.

> Local indexing broken by manually splitting table at arbitrary point
> --------------------------------------------------------------------
>
>                 Key: PHOENIX-6673
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-6673
>             Project: Phoenix
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 5.2.0
>            Reporter: Istvan Toth
>            Priority: Major
>
> While working on PHOENIX-6587, I found that splitting tables with local indexes on certain points will break the local indexing code, and result in incorrect query results.
> When a table is pre-split by Phoenix, or automatically split by HBase, then split points always have a minimum length that is equal to the possible minimum length of the table rowkey. 
> The automatic split always happens at an existing rowkey, and SchemaUtil.processSplits() has code that approximates the same behaviour for pre-split tables.
> However, it is still possible to split the table manually from HBase at points that do not satisfy the above requirement, which breaks local indexing.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)