You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "Geoffrey Jacoby (Jira)" <ji...@apache.org> on 2022/06/07 19:40:00 UTC

[jira] [Updated] (PHOENIX-5274) ConnectionQueryServiceImpl#ensureNamespaceCreated and ensureTableCreated should use HBase APIs that do not require ADMIN permissions for existence checks

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

Geoffrey Jacoby updated PHOENIX-5274:
-------------------------------------
    Fix Version/s:     (was: 4.17.0)
                       (was: 4.16.2)

> ConnectionQueryServiceImpl#ensureNamespaceCreated and ensureTableCreated should use HBase APIs that do not require ADMIN permissions for existence checks
> ---------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-5274
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-5274
>             Project: Phoenix
>          Issue Type: Improvement
>    Affects Versions: 5.0.0, 4.15.0, 4.14.2
>            Reporter: Chinmay Kulkarni
>            Assignee: Ankit Jain
>            Priority: Major
>             Fix For: 5.2.0
>
>         Attachments: PHOENIX-5274.4.x-HBase-1.5.v1.patch, PHOENIX-5274.4.x-HBase-1.5.v2.patch, PHOENIX-5274.4.x-HBase-1.5.v3.patch
>
>          Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> [HBASE-22377|https://issues.apache.org/jira/browse/HBASE-22377] will introduce a new API that does not require ADMIN permissions to check the existence of a namespace.
> Currently, CQSI#ensureNamespaceCreated calls HBaseAdmin#getNamespaceDescriptor which eventually on the server causes a call to AccessController#preGetNamespaceDescriptor. This tries to acquire ADMIN permissions on the namespace. We should ideally use the new API provided by HBASE-22377 which does not require the phoenix client to get ADMIN permissions on the namespace. We should acquire ADMIN permissions only in case we need to create the namespace if it doesn't already exist.
> Similarly, CQSI#ensureTableCreated should first check the existence of a table before trying to do HBaseAdmin#getTableDescriptor since this requires CREATE and ADMIN permissions.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)