[
https://issues.apache.org/jira/browse/PHOENIX-6085?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17217274#comment-17217274
]
Istvan Toth commented on PHOENIX-6085:
--------------------------------------
This patch subtly changes the behaviour of writeMutexCell(), which is used for
other purposes, that doesn't look good.
Instead of checking sysMutexPhysicalTableNameBytes and returning false, you
could just catch and rethrow the Exception thrown by
writeMutexCell wrapped in an UpgradeInProgressException exception.
> Remove duplicate calls to getSysMutexPhysicalTableNameBytes() during the
> upgrade path
> -------------------------------------------------------------------------------------
>
> Key: PHOENIX-6085
> URL: https://issues.apache.org/jira/browse/PHOENIX-6085
> Project: Phoenix
> Issue Type: Improvement
> Affects Versions: 5.0.0, 4.15.0
> Reporter: Chinmay Kulkarni
> Assignee: Richard Antal
> Priority: Minor
> Labels: phoenix-hardening, quality-improvement
> Fix For: 5.1.0, 4.16.0
>
> Attachments: PHOENIX-6085.4.x.v1.patch, PHOENIX-6085.master.v1.patch
>
>
> We already make this call inside
> [CQSI.acquireUpgradeMutex()|https://github.com/apache/phoenix/blob/1922895dfe5960dc025709b04acfaf974d3959dc/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java#L4220]
> and then call writeMutexCell() which calls this again
> [here|https://github.com/apache/phoenix/blob/1922895dfe5960dc025709b04acfaf974d3959dc/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java#L4244].
>
> We should move this to inside writeMutexCell() itself and throw
> UpgradeInProgressException if required there to avoid unnecessary expensive
> HBase admin API calls.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)