Kadir Ozdemir created PHOENIX-5503:
--------------------------------------

             Summary: 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: 4.14.3, 5.0.0, 4.15.0
            Reporter: Kadir Ozdemir


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