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:
- have a separate class for each analyzers
- 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 functin related analyzers from DDLSemanticAnalyzer and FunctionSemanticAnalyzer and MacroSemanticAnalyzer, and move them under the new package.