-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/70597/
-----------------------------------------------------------

Review request for hive and Zoltan Haindrich.


Bugs: HIVE-21693
    https://issues.apache.org/jira/browse/HIVE-21693


Repository: hive-git


Description
-------

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...)
In the interim time when there are two DDLTask and DDLWork classes in the code 
base the new ones in the new package are called DDLTask2 and DDLWork2 thus 
avoiding the usage of fully qualified class names where both the old and the 
new classes are in use.

Step #7: extract all the process related operations from the old DDLTask, and 
move them under the new package.

Also rearranged table and view related operations for a nicer structure.


Diffs
-----

  
hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/CreateTableHook.java
 8366e5ec93 
  
hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/HCatSemanticAnalyzer.java
 6d9dd5eb05 
  
itests/util/src/main/java/org/apache/hadoop/hive/ql/metadata/DummySemanticAnalyzerHook.java
 f988d42366 
  
itests/util/src/main/java/org/apache/hadoop/hive/ql/metadata/DummySemanticAnalyzerHook1.java
 b2b00720c6 
  
ql/src/java/org/apache/hadoop/hive/ql/ddl/alter/AlterMaterializedViewDesc.java 
f0afccacb5 
  
ql/src/java/org/apache/hadoop/hive/ql/ddl/alter/AlterMaterializedViewRewriteDesc.java
 72cc84c5cd 
  
ql/src/java/org/apache/hadoop/hive/ql/ddl/alter/AlterMaterializedViewRewriteOperation.java
 379f472452 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/alter/package-info.java b113f39db8 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/process/AbortTransactionsDesc.java 
PRE-CREATION 
  
ql/src/java/org/apache/hadoop/hive/ql/ddl/process/AbortTransactionsOperation.java
 PRE-CREATION 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/process/KillQueriesOperation.java 
PRE-CREATION 
  
ql/src/java/org/apache/hadoop/hive/ql/ddl/process/ShowCompactionsOperation.java 
PRE-CREATION 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/process/ShowTransactionsDesc.java 
PRE-CREATION 
  
ql/src/java/org/apache/hadoop/hive/ql/ddl/process/ShowTransactionsOperation.java
 PRE-CREATION 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/process/package-info.java 
PRE-CREATION 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/CreateTableDesc.java 
ee32f4c9b4 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/CreateTableLikeDesc.java 
6652b79a88 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/CreateTableLikeOperation.java 
7cec1e38af 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/CreateTableOperation.java 
2987cab9b0 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/CreateViewDesc.java 
ebc7e00b7d 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/CreateViewOperation.java 
f8d95aa747 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/DescTableDesc.java bb533c2c85 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/DescTableOperation.java 
1d94ff3a5b 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/DropTableDesc.java f910c57f3a 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/DropTableOperation.java 
d250772b2a 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/LockTableDesc.java 2a8b02e067 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/LockTableOperation.java 
2044a81406 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/PreInsertTableDesc.java 
4bb609ef54 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/PreInsertTableOperation.java 
5d85d0a14c 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/ShowCreateTableDesc.java 
a06f1fae5f 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/ShowCreateTableOperation.java 
932d9428a9 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/ShowTablePropertiesDesc.java 
7ba1c2daef 
  
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/ShowTablePropertiesOperation.java
 385052d705 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/ShowTableStatusDesc.java 
6707350f34 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/ShowTableStatusOperation.java 
ea695fd1a3 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/ShowTablesDesc.java 
9ec390483d 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/ShowTablesOperation.java 
71b5717bb8 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/TruncateTableDesc.java 
1f0cd82690 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/TruncateTableOperation.java 
9778bfac92 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/UnlockTableDesc.java 
86050244eb 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/UnlockTableOperation.java 
8b70e06ca6 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/package-info.java 
PRE-CREATION 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/info/package-info.java 
PRE-CREATION 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/lock/ShowLocksDesc.java 
PRE-CREATION 
  ql/src/java/org/apache/hadoop/hive/ql/ddl/table/lock/ShowLocksOperation.java 
PRE-CREATION 
  ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java 7c9d910c20 
  
ql/src/java/org/apache/hadoop/hive/ql/exec/repl/bootstrap/load/table/LoadTable.java
 b335f199f8 
  ql/src/java/org/apache/hadoop/hive/ql/io/AcidUtils.java 24fc0d5437 
  ql/src/java/org/apache/hadoop/hive/ql/lockmgr/DbLockManager.java 1a042783b0 
  ql/src/java/org/apache/hadoop/hive/ql/lockmgr/DbTxnManager.java 800d80a067 
  ql/src/java/org/apache/hadoop/hive/ql/lockmgr/HiveTxnManager.java bb46bf9490 
  ql/src/java/org/apache/hadoop/hive/ql/lockmgr/HiveTxnManagerImpl.java 
0e148ed396 
  
ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/MetaDataFormatUtils.java
 c9dd8541c2 
  ql/src/java/org/apache/hadoop/hive/ql/parse/AcidExportSemanticAnalyzer.java 
960dd34a8c 
  ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java 
bd6ae715d6 
  ql/src/java/org/apache/hadoop/hive/ql/parse/ImportSemanticAnalyzer.java 
07b40c996f 
  ql/src/java/org/apache/hadoop/hive/ql/parse/ParseContext.java c4e6e5cc53 
  ql/src/java/org/apache/hadoop/hive/ql/parse/QB.java 4c1e2a27cb 
  ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java 0e58fe20b4 
  ql/src/java/org/apache/hadoop/hive/ql/parse/TaskCompiler.java 67d27cdd87 
  
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/DropTableHandler.java
 edef74e618 
  
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/TruncatePartitionHandler.java
 05a9f9123f 
  
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/TruncateTableHandler.java
 5ef66fafa4 
  ql/src/java/org/apache/hadoop/hive/ql/plan/AbortTxnsDesc.java e15d21549f 
  
ql/src/java/org/apache/hadoop/hive/ql/plan/CreateOrDropTriggerToPoolMappingDesc.java
 ce7589492f 
  ql/src/java/org/apache/hadoop/hive/ql/plan/DDLWork.java 1901defa27 
  ql/src/java/org/apache/hadoop/hive/ql/plan/ImportTableDesc.java dd3af1b35c 
  ql/src/java/org/apache/hadoop/hive/ql/plan/KillQueryDesc.java 3a13064411 
  ql/src/java/org/apache/hadoop/hive/ql/plan/LoadFileDesc.java 5d4e93e74a 
  ql/src/java/org/apache/hadoop/hive/ql/plan/PlanUtils.java 15e922ebd5 
  ql/src/java/org/apache/hadoop/hive/ql/plan/ShowCompactionsDesc.java 
093800f6bb 
  ql/src/java/org/apache/hadoop/hive/ql/plan/ShowLocksDesc.java 2974cd9ac0 
  ql/src/java/org/apache/hadoop/hive/ql/plan/ShowTxnsDesc.java 8696aaa74c 
  ql/src/java/org/apache/hadoop/hive/ql/txn/compactor/CompactorMR.java 
aa12ddb6af 
  ql/src/test/org/apache/hadoop/hive/ql/parse/TestHiveDecimalParse.java 
ae22b7f47a 
  ql/src/test/org/apache/hadoop/hive/ql/parse/TestQBCompact.java 90df85c58e 
  ql/src/test/queries/clientpositive/dbtxnmgr_abort.q d9239958f0 
  ql/src/test/queries/clientpositive/dbtxnmgr_showlocks.q 24a42ea7bc 
  ql/src/test/results/clientnegative/lockneg4.q.out c31a23c152 
  ql/src/test/results/clientnegative/lockneg5.q.out 674fad0d77 
  ql/src/test/results/clientpositive/dbtxnmgr_abort.q.out b1c808a302 
  ql/src/test/results/clientpositive/dbtxnmgr_showlocks.q.out aaf1c7835f 
  ql/src/test/results/clientpositive/kill_query.q.out 32c3f6ac57 
  ql/src/test/results/clientpositive/llap/kill_query.q.out 32c3f6ac57 


Diff: https://reviews.apache.org/r/70597/diff/1/


Testing
-------

All the unit tests are running fine + modified some to cover missing cases.


Thanks,

Miklos Gergely

Reply via email to