Skip to content

Conversation

@miklosgergely
Copy link
Contributor

@miklosgergely miklosgergely commented Sep 12, 2019

DDLSemanticAnalyzer is a huge class, more than 4000 lines long. The goal is to refactor it in order to have everything cut into more handleable classes under the package org.apache.hadoop.hive.ql.exec.ddl:

  1. have a separate class for each analyzers
  2. have a package for each operation, containing an analyzer, a description, and an operation, so the amount of classes under a package is more manageable

Step #2: extract all the privilege related analyzers from DDLSemanticAnalyzer, and move them under the new package.

import org.apache.hadoop.hive.ql.ddl.privilege.role.set.SetRoleDesc;
import org.apache.hadoop.hive.ql.ddl.privilege.role.show.ShowRolesDesc;
import org.apache.hadoop.hive.ql.ddl.privilege.role.showcurrent.ShowCurrentRoleDesc;
import org.apache.hadoop.hive.ql.ddl.privilege.show.grant.ShowGrantDesc;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we can merge them under show package (but not too strongly opinionated about it, up to you).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure what are you suggesting to be merged under the show packege. The HiveAuthorizationTaskFactoryImpl? Or role.show -> show.role?

@miklosgergely miklosgergely deleted the HIVE-22194 branch September 14, 2019 07:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants