[ 
https://issues.apache.org/jira/browse/PHOENIX-5503?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kadir OZDEMIR updated PHOENIX-5503:
-----------------------------------
    Attachment: PHOENIX-5503.master.002.patch

> IndexTool does not rebuild all the rows
> ---------------------------------------
>
>                 Key: PHOENIX-5503
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-5503
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 5.0.0, 4.15.0, 4.14.3
>            Reporter: Kadir Ozdemir
>            Assignee: Kadir OZDEMIR
>            Priority: Major
>         Attachments: PHOENIX-5503.master.001.patch, 
> PHOENIX-5503.master.002.patch
>
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> IndexTool builds a subset of the rows of an index table. The rows that are 
> created after the time specified by the timestamp of the PTable (i.e., table 
> metadata structure maintained in memory) for the index table are not rebuilt. 
> This timestamp is updated by the PTable builder, that is,  at the time of 
> creating the PTable structure int memory. Based on the comment on the code 
> (see IndexTool.getJob()), this is done to "ensure index tables remains 
> consistent post population".  Such consistency issue may exist for client 
> side index build but PHOENIX-5018 (server side index build) does not have 
> such an issue. However, PHOENIX-5018 did not change this behavior. In order 
> to upgrade an index table to PHOENIX-5156 (new index design), we need to 
> rebuild all the rows that are created before the table is upgraded (not 
> before the timestamp of the index table). Also, we may want to use the 
> IndexTool rebuild an index table online. In that case, we may want include as 
> many rows as possible. This issue is to make sure that IndexTool builds all 
> the rows that exist at the time the tool starts running. 



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

Reply via email to