[
https://issues.apache.org/jira/browse/PHOENIX-7709?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Viraj Jasani updated PHOENIX-7709:
----------------------------------
Fix Version/s: 5.4.0
5.3.1
> Index committer post writer lazy mode - Async RPC call for verified index
> mutations
> -----------------------------------------------------------------------------------
>
> Key: PHOENIX-7709
> URL: https://issues.apache.org/jira/browse/PHOENIX-7709
> Project: Phoenix
> Issue Type: Improvement
> Reporter: Viraj Jasani
> Priority: Major
> Fix For: 5.4.0, 5.3.1
>
>
> In case of the mutable covered index, the sequence of mutations that takes
> place synchronously are
> # Unverified index row mutations
> # Data table row updates
> # Verified index row mutations
> Phoenix provides config "org.apache.hadoop.hbase.index.lazy.post_batch.write"
> to enable async or lazy mode for the last phase i.e. verified index row
> mutations.
> If the config is enabled, it uses LazyParallelWriterIndexCommitter
> implementation which prepares the batch of mutations per table and prepares
> the TaskBatch objects. However, it does not submit the mutations to the
> thread-pool as of today. As a result, if the lazy mode is enabled, every read
> on the index table will end up performing read-repair.
> The purpose of this Jira is to submit the post writer tasks to the respective
> thread-pool without getting blocked on it, to be able to make the third phase
> asynchronous. When the number of indexes are higher, this mode can help
> reduce the write latencies of the data table updates and improve the overall
> throughput.
> User can enable this mode for the given table by using DDL statements.
> e.g.
> {code:java}
> ALTER TABLE T1 SET
> "org.apache.hadoop.hbase.index.lazy.post_batch.write"=true{code}
> {code:java}
> CREATE TABLE T1 (PK1 VARCHAR NOT NULL, C1 VARCHAR)
> "org.apache.hadoop.hbase.index.lazy.post_batch.write"=true{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)