Support Questions

Find answers, ask questions, and share your expertise
Announcements
Celebrating as our community reaches 100,000 members! Thank you!

SHOW CREATE VIEW fails for owner

avatar
Explorer

 

 

Hi,

 

We're strugling with the issue that Impala does not provide access to SHOW CREATE VIEW statement for the owner of the view (as well as owner of underlying table). Sentry based authorization is used.
The documentation (https://www.cloudera.com/documentation/enterprise/5-14-x/topics/impala_show.html#show_create_view) states that the required privileges should be: VIEW_METADATA privilege on the view and SELECT privilege on all underlying views and tables.

In our case the user owns the view and table, therefore, I expect both are fulfilled.

As you could see in the log below, the user has created, selected and dropped the view, but he couldn't see the CREATE statement.

Invalidate metadata was tried too.
Could you kindly help to resolve the issue, so that developers could check the CREATE statements - is there a missing bit or is it a bug?


Environment:
CDH 5.14.2
Impala 2.11.0
LDAP authentication
Sentry file authorization


Here is the log from different aspects:

  • === Sentry file ========
    [users]
    svc.analyticaldata_dq=analytical_data, ...
    ...
    [groups]
    analytical_data=analytical_data
    ...
    [roles]
    analytical_data=server=server1->db=analytical_data
    ...

 

  • === Impala CLI =============
    [node009:21000] > select version();
    Query: select version()
    +-------------------------------------------------------------------------------------------+
    | version() |
    +-------------------------------------------------------------------------------------------+
    | impalad version 2.11.0-cdh5.14.2 RELEASE (build ed85dce709da9557aeb28be89e8044947708876c) |
    | Built on Tue Mar 27 13:39:48 PDT 2018 |
    +-------------------------------------------------------------------------------------------+

    [node009:21000] > select user();
    Query: select user()
    Query submitted at: 2018-07-19 15:30:16 (Coordinator: http://node009:25000)
    Query progress can be monitored at: http://node009:25000/query_plan?query_id=1e4cc7a8258b79ff:e58adb9100000000
    +-----------------------+
    | user() |
    +-----------------------+
    | svc.analyticaldata_dq |
    +-----------------------+
    Fetched 1 row(s) in 0.08s

    [node009:21000] > use analytical_data;
    Query: use analytical_data

    [node009:21000] > create view t as select count(*) from system9999.cases;
    Query: create view t as select count(*) from system9999.cases
    Query submitted at: 2018-07-19 15:24:52 (Coordinator: http://node009:25000)
    Query progress can be monitored at: http://node009:25000/query_plan?query_id=304454e5a834396a:c1fbf50a00000000
    Fetched 0 row(s) in 0.08s

    [node009:21000] > select * from t;
    Query: select * from t
    Query submitted at: 2018-07-19 15:24:55 (Coordinator: http://node009:25000)
    Query progress can be monitored at: http://node009:25000/query_plan?query_id=27459f84b4308766:6ed0235200000000
    +---------+
    | _c0 |
    +---------+
    | 6609331 |
    +---------+
    Fetched 1 row(s) in 4.50s

    [node009:21000] > show create view t;
    Query: show create view t
    ERROR: AuthorizationException: User 'svc.analyticaldata_dq' does not have privileges to see the definition of view 'analytical_data.t'.

    [node009:21000] > drop view t;
    Query: drop view t


  • === Metastore =============
    [metastore]> select TBL_ID,TBL_NAME,OWNER,TBL_TYPE from TBLS where DB_ID=374406;

    +---------+--------------------------------------------+-----------------------+---------------+
    | TBL_ID | TBL_NAME | OWNER | TBL_TYPE |
    +---------+--------------------------------------------+-----------------------+---------------+
    | 1222804 | t | svc.analyticaldata_dq | VIRTUAL_VIEW |

 

1 ACCEPTED SOLUTION

avatar
Cloudera Employee
hide-solution

This problem has been solved!

Want to get a detailed solution you have to login/registered on the community

Register/Login
2 REPLIES 2

avatar
Cloudera Employee
hide-solution

This problem has been solved!

Want to get a detailed solution you have to login/registered on the community

Register/Login

avatar
Explorer
Oh, the issue appeared to be even in functions.
Thanks for fast reply and raising a ticket.