[
https://issues.apache.org/jira/browse/PHOENIX-5928?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Kadir OZDEMIR updated PHOENIX-5928:
-----------------------------------
Attachment: PHOENIX-5928.4.x.008.patch
> Index rebuilds without replaying data table mutations
> -----------------------------------------------------
>
> Key: PHOENIX-5928
> URL: https://issues.apache.org/jira/browse/PHOENIX-5928
> Project: Phoenix
> Issue Type: Improvement
> Affects Versions: 5.0.0, 4.14.3
> Reporter: Kadir OZDEMIR
> Assignee: Kadir OZDEMIR
> Priority: Major
> Attachments: PHOENIX-5928.4.x.001.patch, PHOENIX-5928.4.x.002.patch,
> PHOENIX-5928.4.x.003.patch, PHOENIX-5928.4.x.004.patch,
> PHOENIX-5928.4.x.005.patch, PHOENIX-5928.4.x.006.patch,
> PHOENIX-5928.4.x.007.patch, PHOENIX-5928.4.x.008.patch
>
> Time Spent: 4.5h
> Remaining Estimate: 0h
>
> Index rebuilds are done currently by reading data table mutations (in
> UngroupedAggregateRegionObserver) and then replaying them on the data table
> (in IndexRegionObser) -- without actually applying mutations on the data
> table -- in order to generate the corresponding index mutations and apply
> them on index tables. IndexRegionObserver sets the operation status for these
> data table mutations to NOWRITE so that they are ignored by HBase after
> generating index table mutations from these data table mutations. Since we do
> not apply these mutations on the data table, there is no need to send these
> mutations to the data table regions if index mutations are generated and sent
> to index tables by UngroupedAggregateRegionObserver. By doing so, we
> eliminate going through data table update path and its overhead (its
> interaction with flushes, row locking etc).
--
This message was sent by Atlassian Jira
(v8.3.4#803005)