You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "Chinmay Kulkarni (Jira)" <ji...@apache.org> on 2020/09/12 00:49:00 UTC

[jira] [Updated] (PHOENIX-6129) Remove unnecessary HBase admin API calls when writing and deleting mutex cells

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

Chinmay Kulkarni updated PHOENIX-6129:
--------------------------------------
    Summary: Remove unnecessary HBase admin API calls when writing and deleting mutex cells  (was: Remove unnecessary HBase Admin API calls when writing and deleting mutex cells)

> Remove unnecessary HBase admin API calls when writing and deleting mutex cells
> ------------------------------------------------------------------------------
>
>                 Key: PHOENIX-6129
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-6129
>             Project: Phoenix
>          Issue Type: Improvement
>    Affects Versions: 5.0.0, 4.15.0
>            Reporter: Chinmay Kulkarni
>            Priority: Major
>              Labels: phoenix-hardening, quality-improvement
>             Fix For: 5.1.0, 4.16.0
>
>
> Inside CQSI.writeMutexCell(), we call [getSysMutexPhysicalTableNameBytes()|https://github.com/apache/phoenix/blob/e3c7b4bdce2524eb4fd1e7eb0ccd3454fcca81ce/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java#L4244] which in turn calls HBase Admin APIs to check the existence of SYSTEM.MUTEX/SYSTEM:MUTEX [here|https://github.com/apache/phoenix/blob/e3c7b4bdce2524eb4fd1e7eb0ccd3454fcca81ce/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java#L4309-L4312].
> Later, we anyways try to get the HTable both inside [writeMutexCell()|https://github.com/apache/phoenix/blob/e3c7b4bdce2524eb4fd1e7eb0ccd3454fcca81ce/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java#L4245] and [deleteMutexCell()|https://github.com/apache/phoenix/blob/e3c7b4bdce2524eb4fd1e7eb0ccd3454fcca81ce/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java#L4289]. Instead, we can lazily fail this getTable() call (by catching the HBase TableNotFoundException) to avoid additional HBase Admin API calls.



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