Miklos Gergely created HIVE-21292:
-------------------------------------

             Summary: Break up DDLTask - extract Database related operations
                 Key: HIVE-21292
                 URL: https://issues.apache.org/jira/browse/HIVE-21292
             Project: Hive
          Issue Type: Improvement
          Components: Hive
    Affects Versions: 3.1.1
            Reporter: Miklos Gergely
            Assignee: Miklos Gergely
             Fix For: 4.0.0


DDLTask is a huge class, more than 5000 lines long. The related DDLWork is also 
a huge class, which has a field for each DDL operation it supports. The goal is 
to refactor these in order to have everything cut into more handleable classes 
under the package  org.apache.hadoop.hive.ql.exec.ddl:
 * have a separate class for each operation
 * have a package for each operation group (database ddl, table ddl, etc), so 
the amount of classes under a package is more manageable
 * make all the requests (DDLDesc subclasses) immutable
 * DDLTask should be agnostic to the actual operations
 * right now let's ignore the issue of having some operations handled by 
DDLTask which are not actual DDL operations (lock, unlock, desc...)

Step #1: extract all the database related operations from the old DDLTask, and 
move them under the new package. Also create the new internal framework.



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

Reply via email to