[ 
https://issues.apache.org/jira/browse/PHOENIX-4657?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16705337#comment-16705337
 ] 

Thomas D'Silva commented on PHOENIX-4657:
-----------------------------------------

Can you explain what you mean by "su"? Creating a tenant specific connection is 
easy. 
If you still need to specific the tenant id in the ddl statement that you are 
issuing from a global connection, IMHO it should be easy enough to create a 
tenant specific connection and then issue the DDL statement on the view.

How you select queries work using a global connection on a teanant specific 
view. Select * from Test.Foo, would it return the data from all tenants?

The restriction on updates to views needing to come through the view are a well 
know limitation http://phoenix.apache.org/views.html#Limitations.


> Allow global connections to see tenant-owned objects
> ----------------------------------------------------
>
>                 Key: PHOENIX-4657
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4657
>             Project: Phoenix
>          Issue Type: New Feature
>    Affects Versions: 4.13.0
>            Reporter: Geoffrey Jacoby
>            Priority: Major
>
> Views and indexes created by tenant connections are invisible to global 
> connections. This is problematic in environments where normal users are 
> always assigned tenant connections but system-level processes and admin tools 
> use globals. 
> A user can create a view or index that an administrator using, say, sqlline, 
> cannot easily drop.
> In offline conversations, I've learned that one reason for this is 
> disambiguation: tenant A and tenant B can both create an object called 
> "Test.Foo". 
> One straightforward way around this problem is to allow the global connection 
> to fully qualify the object name. For example, to drop the views in the above 
> example, a user could do the following:
> DROP VIEW IF EXISTS "A".Test.Foo
> DROP VIEW IF EXISTS "B".Test.Foo
> (The quotes are there to disambiguate <tenant_id>.<view name> from 
> <schema>.<view_name>)
> If some environments wish to forbid global connections from seeing 
> tenant-owned objects (the old behavior), this could perhaps be configurable 
> server-side in hbase-site.xml, or alternately, by an enhancement to the GRANT 
> functionality.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to