Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
5.0.0, 4.15.0, 4.14.2
-
None
-
None
Description
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.
Attachments
Attachments
Issue Links
- depends upon
-
HBASE-22377 Provide API to check the existence of a namespace which does not require ADMIN permissions
- Closed
- links to