Ashutosh Bapat created HIVE-22512:
-------------------------------------

             Summary: Use direct SQL to fetch column privileges in 
refreshPrivileges
                 Key: HIVE-22512
                 URL: https://issues.apache.org/jira/browse/HIVE-22512
             Project: Hive
          Issue Type: Improvement
          Components: Metastore
    Affects Versions: 4.0.0
            Reporter: Ashutosh Bapat
            Assignee: Ashutosh Bapat


refreshPrivileges() callsĀ listTableAllColumnGrants() to fetch the column level 
privileges. The later function retrieves the individual column objects by 
firing one query per column privilege object, thus causing the backend db to be 
swamped by these queries when PrivilegeSynchronizer is run. 
PrivilegeSynchronizer synchronizes privileges of all the databases, tables and 
columns and thus the backend db can get swamped really bad when there are 
thousands of tables with hundreds of columns.

The output of listTableAllColumnGrants() is not used completely so all the 
columns the PM has tried to retrieves anyway goes waste.

Fix this by using direct SQL to fetch column privileges.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to