[
https://issues.apache.org/jira/browse/PHOENIX-7408?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Kadir Ozdemir updated PHOENIX-7408:
-----------------------------------
Summary: Improve throughput and reliability for delete operations on tables
with indexes (was: Improve throughput and reliability delete operations on
tables with indexes)
> Improve throughput and reliability for delete operations on tables with
> indexes
> -------------------------------------------------------------------------------
>
> Key: PHOENIX-7408
> URL: https://issues.apache.org/jira/browse/PHOENIX-7408
> Project: Phoenix
> Issue Type: Improvement
> Reporter: Kadir Ozdemir
> Priority: Major
>
> Server side delete queries are executed by first
> UngroupAggregateRegionObserver (UARO) to identify the row keys of the data
> table rows to be deleted and then the delete mutations are processed by
> IndexRegionObserve (IRO).
> When a delete query is executed on the data table, the data table rows are
> read twice, one for the delete query by UARO and the other for generating
> index mutations by IRO.
> Both the delete query on the data table and the delete operations can be
> executed by the same coproc and thus the double read of the rows can be
> eliminated. This will improve the throughput of the delete operations.
> Delete queries and operations are executed in parallel over table regions. If
> any of these executions fails, the delete query will fail too but the other
> executions in progress will continue to make progress. To make sure that
> these executions will not have side effects on the new mutations, we can use
> snapshot isolation for the delete query, more specifically, set the end time
> for the delete scans. This means that delete queries will not include the new
> mutations arrive after the delete query starts executing. This will improve
> the reliability of the delete operations. This will also further improve the
> throughput and efficiency of the delete operations as they do not need to go
> through Phoenix level row locking and concurrency handling within IRO.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)