-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/70876/
-----------------------------------------------------------
(Updated June 20, 2019, 6:51 a.m.)
Review request for hive and Zoltan Haindrich.
Bugs: HIVE-21891
https://issues.apache.org/jira/browse/HIVE-21891
Repository: hive-git
Description
-------
DDLTask was a huge class, more than 5000 lines long. The related DDLWork was
also a huge class, which had a field for each DDL operation it supported. The
goal was 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 - most of them are now
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 were two DDLTask and DDLWork classes in the code
base the new ones in the new package were called DDLTask2 and DDLWork2 thus
avoiding the usage of fully qualified class names where both the old and the
new classes were in use.
Step #12: rename DDLTask2 and DDLWork2, now that they are alone. Remove the old
DDLDesc. Instead of registering, now DDLTask finds the DDLOperations, and
registers them itself.
Diffs (updated)
-----
contrib/src/test/results/clientnegative/serde_regex.q.out 65b8e314fc
hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/CreateDatabaseHook.java
1f05b892d9
hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/CreateTableHook.java
53ca98394d
hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/HCatSemanticAnalyzer.java
8e5db2d8a9
hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/HCatSemanticAnalyzerBase.java
a237db87d2
itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/parse/TestReplicationScenarios.java
1f41d46782
itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/parse/TestReplicationScenariosAcrossInstances.java
406bec6ae8
itests/hive-unit/src/test/java/org/apache/hive/jdbc/TestJdbcDriver2.java
79e4818eb0
itests/util/src/main/java/org/apache/hadoop/hive/ql/metadata/DummySemanticAnalyzerHook.java
414feecd85
itests/util/src/main/java/org/apache/hadoop/hive/ql/metadata/DummySemanticAnalyzerHook1.java
554aaf3682
ql/pom.xml 7c4d26f512
ql/src/java/org/apache/hadoop/hive/ql/Driver.java 18438aa592
ql/src/java/org/apache/hadoop/hive/ql/QueryPlan.java 7636019770
ql/src/java/org/apache/hadoop/hive/ql/ddl/DDLDesc.java 66e5cb0fed
ql/src/java/org/apache/hadoop/hive/ql/ddl/DDLOperation.java d556d55f97
ql/src/java/org/apache/hadoop/hive/ql/ddl/DDLOperationContext.java d5969cd123
ql/src/java/org/apache/hadoop/hive/ql/ddl/DDLTask2.java ecc550103c
ql/src/java/org/apache/hadoop/hive/ql/ddl/DDLWork2.java 98f1fbf540
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/AlterDatabaseDesc.java
46eb092243
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/AlterDatabaseOperation.java
a3bc7b000f
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/CreateDatabaseDesc.java
2ba8b186ed
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/CreateDatabaseOperation.java
ed8da551ff
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/DescDatabaseDesc.java
948e24bd4f
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/DescDatabaseOperation.java
801ac62987
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/DropDatabaseDesc.java
933c3c652f
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/DropDatabaseOperation.java
d9e50083f0
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/LockDatabaseDesc.java
5194c890ac
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/LockDatabaseOperation.java
cf01a31785
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/ShowCreateDatabaseDesc.java
848bfab6ad
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/ShowCreateDatabaseOperation.java
100ac95f40
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/ShowDatabasesDesc.java
e8f4e442d4
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/ShowDatabasesOperation.java
476762feb2
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/SwitchDatabaseDesc.java
258b0366dc
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/SwitchDatabaseOperation.java
6e3d4faaf1
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/UnlockDatabaseDesc.java
f105bfaa81
ql/src/java/org/apache/hadoop/hive/ql/ddl/database/UnlockDatabaseOperation.java
91ca0b00d9
ql/src/java/org/apache/hadoop/hive/ql/ddl/function/DescFunctionDesc.java
b84c630149
ql/src/java/org/apache/hadoop/hive/ql/ddl/function/DescFunctionOperation.java
2165875f1e
ql/src/java/org/apache/hadoop/hive/ql/ddl/function/ShowFunctionsDesc.java
79074e8550
ql/src/java/org/apache/hadoop/hive/ql/ddl/function/ShowFunctionsOperation.java
d23899c41e
ql/src/java/org/apache/hadoop/hive/ql/ddl/misc/CacheMetadataDesc.java
174b077374
ql/src/java/org/apache/hadoop/hive/ql/ddl/misc/CacheMetadataOperation.java
98dda31e51
ql/src/java/org/apache/hadoop/hive/ql/ddl/misc/InsertCommitHookDesc.java
f58e20c221
ql/src/java/org/apache/hadoop/hive/ql/ddl/misc/InsertCommitHookOperation.java
c32fa31be1
ql/src/java/org/apache/hadoop/hive/ql/ddl/misc/MsckDesc.java 5e008319cf
ql/src/java/org/apache/hadoop/hive/ql/ddl/misc/MsckOperation.java 5edc798851
ql/src/java/org/apache/hadoop/hive/ql/ddl/misc/ReplRemoveFirstIncLoadPendFlagDesc.java
33d9dd7e2c
ql/src/java/org/apache/hadoop/hive/ql/ddl/misc/ReplRemoveFirstIncLoadPendFlagOperation.java
dadfedb70d
ql/src/java/org/apache/hadoop/hive/ql/ddl/misc/ShowConfDesc.java f9a8d2df71
ql/src/java/org/apache/hadoop/hive/ql/ddl/misc/ShowConfOperation.java
714d0e4b07
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/CreateRoleDesc.java
9641682d95
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/CreateRoleOperation.java
57f8b46818
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/DropRoleDesc.java
b8dcaacad7
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/DropRoleOperation.java
8f33bd31ed
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/GrantDesc.java 0cd7f1e8a2
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/GrantOperation.java
041987d53e
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/GrantRoleDesc.java
e27931a478
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/GrantRoleOperation.java
acb3a21d73
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/RevokeDesc.java
dd873c799a
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/RevokeOperation.java
62d79651a0
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/RevokeRoleDesc.java
05507ec905
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/RevokeRoleOperation.java
ecd664b1ed
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/SetRoleDesc.java
e3e1bb1a2a
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/SetRoleOperation.java
590e015630
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/ShowCurrentRoleDesc.java
37f049e103
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/ShowCurrentRoleOperation.java
9e83ece15c
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/ShowGrantDesc.java
c5c8fe4a2c
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/ShowGrantOperation.java
0affff03a0
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/ShowPrincipalsDesc.java
e1392c9d8c
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/ShowPrincipalsOperation.java
73f1030d76
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/ShowRoleGrantDesc.java
3b713a125a
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/ShowRoleGrantOperation.java
e3e4e1409c
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/ShowRolesDesc.java
36a0b1aa14
ql/src/java/org/apache/hadoop/hive/ql/ddl/privilege/ShowRolesOperation.java
0597eaffe2
ql/src/java/org/apache/hadoop/hive/ql/ddl/process/AbortTransactionsDesc.java
68a83fc6f3
ql/src/java/org/apache/hadoop/hive/ql/ddl/process/AbortTransactionsOperation.java
251390581e
ql/src/java/org/apache/hadoop/hive/ql/ddl/process/KillQueriesDesc.java
0779e9e686
ql/src/java/org/apache/hadoop/hive/ql/ddl/process/KillQueriesOperation.java
74d37ece28
ql/src/java/org/apache/hadoop/hive/ql/ddl/process/ShowCompactionsDesc.java
14fbd5c8c4
ql/src/java/org/apache/hadoop/hive/ql/ddl/process/ShowCompactionsOperation.java
e148aa0fe0
ql/src/java/org/apache/hadoop/hive/ql/ddl/process/ShowTransactionsDesc.java
f9c9374d04
ql/src/java/org/apache/hadoop/hive/ql/ddl/process/ShowTransactionsOperation.java
59a795347d
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/AbstractAlterTableDesc.java
0e1c81748c
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/AbstractAlterTableOperation.java
e771033d44
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/column/AlterTableAddColumnsDesc.java
d08276efff
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/column/AlterTableAddColumnsOperation.java
9a49d10f0c
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/column/AlterTableChangeColumnDesc.java
a619acc67e
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/column/AlterTableChangeColumnOperation.java
31311ede4e
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/column/AlterTableReplaceColumnsDesc.java
b4e70042ab
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/column/AlterTableReplaceColumnsOperation.java
5722490feb
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/column/AlterTableUpdateColumnsDesc.java
0acaa877fa
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/column/AlterTableUpdateColumnsOperation.java
f78e61b13c
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/column/ShowColumnsDesc.java
45008edda4
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/column/ShowColumnsOperation.java
068863df8b
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/constaint/AlterTableAddConstraintDesc.java
35023dbe6b
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/constaint/AlterTableAddConstraintOperation.java
f6861a5e72
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/constaint/AlterTableDropConstraintDesc.java
c5119c5308
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/constaint/AlterTableDropConstraintOperation.java
84c750ee5a
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableDesc.java
77dfbe9be6
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableLikeDesc.java
b6c58ba90b
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableLikeOperation.java
d6198d9a4b
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/CreateTableOperation.java
d5054618c8
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/DropTableDesc.java
44b1593f78
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/DropTableOperation.java
a56fabd8a4
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/ShowCreateTableDesc.java
bba67a4890
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/creation/ShowCreateTableOperation.java
74a799458e
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/info/DescTableDesc.java
17d97bad5b
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/info/DescTableOperation.java
93deb0f927
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/info/ShowTablePropertiesDesc.java
d9b618ee48
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/info/ShowTablePropertiesOperation.java
f145ca53b9
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/info/ShowTableStatusDesc.java
daca469af6
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/info/ShowTableStatusOperation.java
4a1947b28c
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/info/ShowTablesDesc.java
79b2d955f6
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/info/ShowTablesOperation.java
0cbcb0d746
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/lock/LockTableDesc.java
9e545e1a7f
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/lock/LockTableOperation.java
8c722d4e5e
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/lock/ShowLocksDesc.java
075492f02e
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/lock/ShowLocksOperation.java
de0c141bf0
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/lock/UnlockTableDesc.java
fcda7fa70a
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/lock/UnlockTableOperation.java
d0691fdbdc
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/AlterTableRenameDesc.java
e98d528f98
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/AlterTableRenameOperation.java
4345c9e6f5
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/AlterTableSetOwnerDesc.java
29a0bcf851
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/AlterTableSetOwnerOperation.java
eb7be24bba
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/AlterTableSetPropertiesDesc.java
6ef7cedc1e
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/AlterTableSetPropertiesOperation.java
b0a763fc7b
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/AlterTableTouchDesc.java
92f498d550
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/AlterTableTouchOperation.java
4180f622a3
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/AlterTableUnsetPropertiesDesc.java
a156972821
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/AlterTableUnsetPropertiesOperation.java
0e69a9a0d4
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/PreInsertTableDesc.java
4b7c606956
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/PreInsertTableOperation.java
d1136a5204
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/TruncateTableDesc.java
6980667ff6
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/misc/TruncateTableOperation.java
db8c3c7209
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/partition/AlterTableAddPartitionDesc.java
08a2ffbaf9
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/partition/AlterTableAddPartitionOperation.java
19eb7901d2
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/partition/AlterTableAlterPartitionDesc.java
33b0205f07
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/partition/AlterTableAlterPartitionOperation.java
57cba22695
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/partition/AlterTableDropPartitionDesc.java
c57aef7690
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/partition/AlterTableDropPartitionOperation.java
eae2b51beb
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/partition/AlterTableExchangePartitionsDesc.java
176bae838c
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/partition/AlterTableExchangePartitionsOperation.java
65400838d9
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/partition/AlterTableRenamePartitionDesc.java
b534db126f
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/partition/AlterTableRenamePartitionOperation.java
b26d346c36
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/partition/ShowPartitionsDesc.java
187a61fd7a
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/partition/ShowPartitionsOperation.java
5df9474805
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableArchiveDesc.java
67aabd5f57
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableArchiveOperation.java
d1f2a694e6
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableClusteredByDesc.java
43862b0245
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableClusteredByOperation.java
bb5b2efbc1
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableCompactDesc.java
3ac9051865
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableCompactOperation.java
4e3e2c5033
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableConcatenateDesc.java
fd0ccb4e7a
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableConcatenateOperation.java
1f1ee692bf
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableIntoBucketsDesc.java
744769d836
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableIntoBucketsOperation.java
d9f48ccded
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableNotClusteredDesc.java
fe4c41387f
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableNotClusteredOperation.java
6cca228ddc
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableNotSkewedDesc.java
080dcfbdbb
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableNotSkewedOperation.java
ab39790c29
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableNotSortedDesc.java
adb7c0f5bd
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableNotSortedOperation.java
fec0d1b941
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableSetFileFormatDesc.java
e2408d81f5
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableSetFileFormatOperation.java
bc1a2deb99
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableSetLocationDesc.java
573caabc5a
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableSetLocationOperation.java
12cfca07c3
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableSetSerdeDesc.java
c245a2d5d3
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableSetSerdeOperation.java
9e173207df
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableSetSerdePropsDesc.java
977ad93b71
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableSetSerdePropsOperation.java
e1294e95e2
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableSetSkewedLocationDesc.java
ddc8bb89ce
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableSetSkewedLocationOperation.java
5385ddcbbe
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableSkewedByDesc.java
fa50cfd774
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableSkewedByOperation.java
77ef217c6b
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableUnarchiveDesc.java
b75299c56f
ql/src/java/org/apache/hadoop/hive/ql/ddl/table/storage/AlterTableUnarchiveOperation.java
248874fd20
ql/src/java/org/apache/hadoop/hive/ql/ddl/view/AlterMaterializedViewRewriteDesc.java
a5e6494a97
ql/src/java/org/apache/hadoop/hive/ql/ddl/view/AlterMaterializedViewRewriteOperation.java
a94fa4e20b
ql/src/java/org/apache/hadoop/hive/ql/ddl/view/CreateViewDesc.java 2ec8c32178
ql/src/java/org/apache/hadoop/hive/ql/ddl/view/CreateViewOperation.java
b32413eab4
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/AlterPoolAddTriggerDesc.java
0479e0ad56
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/AlterPoolAddTriggerOperation.java
e6bee58205
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/AlterPoolDropTriggerDesc.java
ecd800fec3
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/AlterPoolDropTriggerOperation.java
fc894051b3
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/AlterResourcePlanDesc.java
4e7a699f5b
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/AlterResourcePlanOperation.java
89fa0a3032
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/AlterWMMappingDesc.java
641dfa9ef8
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/AlterWMMappingOperation.java
847ead543c
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/AlterWMPoolDesc.java
9ce8b2687e
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/AlterWMPoolOperation.java
4d835eeb6c
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/AlterWMTriggerDesc.java
9301626016
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/AlterWMTriggerOperation.java
fab76d9c25
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/CreateResourcePlanDesc.java
f7c3a50efc
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/CreateResourcePlanOperation.java
872e9983c0
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/CreateWMMappingDesc.java
c1455bcdd6
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/CreateWMMappingOperation.java
dc629e5a5f
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/CreateWMPoolDesc.java
93c38d4f7d
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/CreateWMPoolOperation.java
75030c869f
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/CreateWMTriggerDesc.java
e6d9435ede
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/CreateWMTriggerOperation.java
1b76faf79d
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/DropResourcePlanDesc.java
d70eeb9a49
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/DropResourcePlanOperation.java
622ff879b0
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/DropWMMappingDesc.java
7083937481
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/DropWMMappingOperation.java
d1172069db
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/DropWMPoolDesc.java
4034130535
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/DropWMPoolOperation.java
707f3231d0
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/DropWMTriggerDesc.java
089b78a8a3
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/DropWMTriggerOperation.java
0218688e00
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/ShowResourcePlanDesc.java
1f4b5cfd71
ql/src/java/org/apache/hadoop/hive/ql/ddl/workloadmanagement/ShowResourcePlanOperation.java
49a50d3e6c
ql/src/java/org/apache/hadoop/hive/ql/exec/TaskFactory.java c4e537042a
ql/src/java/org/apache/hadoop/hive/ql/exec/repl/bootstrap/load/LoadDatabase.java
17b7ebe2b2
ql/src/java/org/apache/hadoop/hive/ql/exec/repl/bootstrap/load/table/LoadPartitions.java
39d85ba079
ql/src/java/org/apache/hadoop/hive/ql/exec/repl/bootstrap/load/table/LoadTable.java
8a96136e28
ql/src/java/org/apache/hadoop/hive/ql/exec/repl/incremental/IncrementalLoadTasksBuilder.java
f3f5a2b1d7
ql/src/java/org/apache/hadoop/hive/ql/exec/repl/util/ReplUtils.java
27127e0eb3
ql/src/java/org/apache/hadoop/hive/ql/optimizer/QueryPlanPostProcessor.java
6b97d662f8
ql/src/java/org/apache/hadoop/hive/ql/parse/AcidExportSemanticAnalyzer.java
cd7b69dc8a
ql/src/java/org/apache/hadoop/hive/ql/parse/BaseSemanticAnalyzer.java
e67b717acb
ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java
e6990eeb12
ql/src/java/org/apache/hadoop/hive/ql/parse/ImportSemanticAnalyzer.java
4225b7bb86
ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java b97ff31dbd
ql/src/java/org/apache/hadoop/hive/ql/parse/TaskCompiler.java fa70820934
ql/src/java/org/apache/hadoop/hive/ql/parse/authorization/HiveAuthorizationTaskFactoryImpl.java
61b60680dc
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/AddForeignKeyHandler.java
660f110d20
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/AddNotNullConstraintHandler.java
db18e37fd6
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/AddPrimaryKeyHandler.java
ea7f1dc667
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/AddUniqueConstraintHandler.java
e0b708bb93
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/AlterDatabaseHandler.java
5a527ae0de
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/CreateDatabaseHandler.java
b81aa2db4d
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/DropConstraintHandler.java
abf05bfd87
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/DropDatabaseHandler.java
fd1e0e1f2a
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/DropPartitionHandler.java
d48cf7afb7
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/DropTableHandler.java
f66a40833f
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/RenamePartitionHandler.java
c380c0ddf2
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/RenameTableHandler.java
230650b6aa
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/TruncatePartitionHandler.java
8d5a50ae81
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/load/message/TruncateTableHandler.java
8e3186f738
ql/src/java/org/apache/hadoop/hive/ql/plan/ArchiveDesc.java 8b35fce97b
ql/src/java/org/apache/hadoop/hive/ql/plan/ColumnStatsDesc.java 4560565b41
ql/src/java/org/apache/hadoop/hive/ql/plan/ColumnStatsUpdateWork.java
4a14246405
ql/src/java/org/apache/hadoop/hive/ql/plan/DDLDesc.java 8941d97606
ql/src/java/org/apache/hadoop/hive/ql/plan/ImportTableDesc.java 19534d1954
ql/src/test/org/apache/hadoop/hive/ql/parse/TestHiveDecimalParse.java
5f733fc818
ql/src/test/org/apache/hadoop/hive/ql/parse/TestQBCompact.java 19ab8e6474
ql/src/test/org/apache/hadoop/hive/ql/parse/authorization/AuthorizationTestUtil.java
68f73800b4
ql/src/test/org/apache/hadoop/hive/ql/parse/authorization/PrivilegesTestBase.java
b194cc3b67
ql/src/test/org/apache/hadoop/hive/ql/parse/authorization/TestHiveAuthorizationTaskFactory.java
e7a1bd6156
ql/src/test/org/apache/hadoop/hive/ql/plan/TestConditionalResolverCommonJoin.java
bc95858244
ql/src/test/results/clientnegative/add_partition_with_whitelist.q.out
a744a94f53
ql/src/test/results/clientnegative/addpart1.q.out 61fbc57f95
ql/src/test/results/clientnegative/allow_change_col_type_par_neg.q.out
a5a75de2d2
ql/src/test/results/clientnegative/alter_external_acid.q.out 51e44b8340
ql/src/test/results/clientnegative/alter_partition_change_col_dup_col.q.out
643b293915
ql/src/test/results/clientnegative/alter_partition_change_col_nonexist.q.out
77519da0ea
ql/src/test/results/clientnegative/alter_partition_with_whitelist.q.out
4049cc7415
ql/src/test/results/clientnegative/alter_rename_partition_failure.q.out
0dddbc1c4d
ql/src/test/results/clientnegative/alter_rename_partition_failure2.q.out
566ac6fd12
ql/src/test/results/clientnegative/alter_table_constraint_duplicate_pk.q.out
f8e16d3f6c
ql/src/test/results/clientnegative/alter_table_constraint_invalid_fk_col1.q.out
4a3ddd3466
ql/src/test/results/clientnegative/alter_table_constraint_invalid_fk_col2.q.out
3453c1f13f
ql/src/test/results/clientnegative/alter_table_constraint_invalid_fk_tbl1.q.out
9ff66c3204
ql/src/test/results/clientnegative/alter_table_constraint_invalid_fk_tbl2.q.out
a81568b966
ql/src/test/results/clientnegative/alter_table_constraint_invalid_pk_col.q.out
d64b023c78
ql/src/test/results/clientnegative/alter_table_constraint_invalid_pk_tbl.q.out
59ed5d6ef0
ql/src/test/results/clientnegative/alter_table_constraint_invalid_ref.q.out
1687c5add7
ql/src/test/results/clientnegative/alter_table_wrong_db.q.out eca572b4dd
ql/src/test/results/clientnegative/alter_table_wrong_location2.q.out
8c4af26d34
ql/src/test/results/clientnegative/alter_table_wrong_regex.q.out 1c02789139
ql/src/test/results/clientnegative/altern1.q.out beb0df51af
ql/src/test/results/clientnegative/archive1.q.out d52ac0e1b1
ql/src/test/results/clientnegative/archive2.q.out 75d823eb37
ql/src/test/results/clientnegative/archive_multi1.q.out c5f85cc792
ql/src/test/results/clientnegative/archive_multi2.q.out 460b78108a
ql/src/test/results/clientnegative/archive_multi3.q.out 0095bbef2b
ql/src/test/results/clientnegative/archive_multi4.q.out 8413e83a66
ql/src/test/results/clientnegative/archive_multi5.q.out 36a78305ef
ql/src/test/results/clientnegative/archive_multi6.q.out 2046db96b7
ql/src/test/results/clientnegative/authorization_cannot_create_default_role.q.out
d72cb25724
ql/src/test/results/clientnegative/authorization_caseinsensitivity.q.out
f1b469f7fb
ql/src/test/results/clientnegative/authorization_create_role_no_admin.q.out
9faf5bc7b1
ql/src/test/results/clientnegative/authorization_drop_admin_role.q.out
e5474ac312
ql/src/test/results/clientnegative/authorization_drop_role_no_admin.q.out
e03796d492
ql/src/test/results/clientnegative/authorization_fail_1.q.out 1fba5cf834
ql/src/test/results/clientnegative/authorization_fail_8.q.out adfe2d271c
ql/src/test/results/clientnegative/authorization_grant_group.q.out 7707458889
ql/src/test/results/clientnegative/authorization_grant_table_allpriv.q.out
139517d2aa
ql/src/test/results/clientnegative/authorization_grant_table_dup.q.out
3e50f11d8e
ql/src/test/results/clientnegative/authorization_grant_table_fail1.q.out
f4d362b6b3
ql/src/test/results/clientnegative/authorization_grant_table_fail_nogrant.q.out
d9e292f990
ql/src/test/results/clientnegative/authorization_invalid_priv_v2.q.out
5c319c605e
ql/src/test/results/clientnegative/authorization_priv_current_role_neg.q.out
ebfa03cd5d
ql/src/test/results/clientnegative/authorization_public_create.q.out
5aaf75d89d
ql/src/test/results/clientnegative/authorization_public_drop.q.out 003a5f1497
ql/src/test/results/clientnegative/authorization_revoke_table_fail1.q.out
bca1b92828
ql/src/test/results/clientnegative/authorization_revoke_table_fail2.q.out
ee2a2a5d52
ql/src/test/results/clientnegative/authorization_role_case.q.out 7b07d1be40
ql/src/test/results/clientnegative/authorization_role_cycles1.q.out
2085067420
ql/src/test/results/clientnegative/authorization_role_cycles2.q.out
cf6b3913ca
ql/src/test/results/clientnegative/authorization_role_grant.q.out 951b050dfc
ql/src/test/results/clientnegative/authorization_role_grant2.q.out 7beef281f6
ql/src/test/results/clientnegative/authorization_role_grant_nosuchrole.q.out
34675bfe58
ql/src/test/results/clientnegative/authorization_role_grant_otherrole.q.out
3a0760d41b
ql/src/test/results/clientnegative/authorization_role_grant_otheruser.q.out
0da86c9e88
ql/src/test/results/clientnegative/authorization_set_role_neg1.q.out
56d6b7e314
ql/src/test/results/clientnegative/authorization_set_role_neg2.q.out
0396a1f6d7
ql/src/test/results/clientnegative/authorization_show_grant_otherrole.q.out
d8dad360b0
ql/src/test/results/clientnegative/authorization_show_grant_otheruser_all.q.out
74e93d94d1
ql/src/test/results/clientnegative/authorization_show_grant_otheruser_alltabs.q.out
b3aee245ae
ql/src/test/results/clientnegative/authorization_show_grant_otheruser_wtab.q.out
cadbe1161a
ql/src/test/results/clientnegative/authorization_show_role_principals_no_admin.q.out
ee0fef12ea
ql/src/test/results/clientnegative/authorization_show_roles_no_admin.q.out
7cd4bb1e2a
ql/src/test/results/clientnegative/authorization_table_grant_nosuchrole.q.out
506088d3b4
ql/src/test/results/clientnegative/authorize_grant_public.q.out a25fa01528
ql/src/test/results/clientnegative/authorize_revoke_public.q.out af3fbcb4da
ql/src/test/results/clientnegative/avro_add_column_extschema.q.out ac9e994fc4
ql/src/test/results/clientnegative/avro_decimal.q.out 077b2d8c6a
ql/src/test/results/clientnegative/column_rename1.q.out 5509275c74
ql/src/test/results/clientnegative/column_rename2.q.out 38bbd53fb1
ql/src/test/results/clientnegative/column_rename4.q.out c2fcaadeff
ql/src/test/results/clientnegative/compact_non_acid_table.q.out 2e1f1970bc
ql/src/test/results/clientnegative/constraint_duplicate_name.q.out b94ca1c1a6
ql/src/test/results/clientnegative/create_external_acid.q.out 85b0458578
ql/src/test/results/clientnegative/create_not_acid.q.out 3172f182d5
ql/src/test/results/clientnegative/create_table_wrong_regex.q.out 694dc73e0f
ql/src/test/results/clientnegative/create_view_failure1.q.out 98927e0f0e
ql/src/test/results/clientnegative/create_view_failure2.q.out c62dc3292e
ql/src/test/results/clientnegative/create_view_failure4.q.out d9dd837fb2
ql/src/test/results/clientnegative/create_with_constraints_duplicate_name.q.out
01baf1b3dc
ql/src/test/results/clientnegative/create_with_fk_constraint.q.out c54c724060
ql/src/test/results/clientnegative/create_with_fk_pk_same_tab.q.out
4ec45a6675
ql/src/test/results/clientnegative/create_with_fk_uk_same_tab.q.out
04365f0096
ql/src/test/results/clientnegative/create_with_fk_wrong_ref.q.out ca1304eb5b
ql/src/test/results/clientnegative/create_with_fk_wrong_ref2.q.out 32d6284971
ql/src/test/results/clientnegative/database_create_already_exists.q.out
98eeda9bec
ql/src/test/results/clientnegative/database_create_invalid_name.q.out
9a74b0c246
ql/src/test/results/clientnegative/database_drop_not_empty.q.out 6b22e5d20b
ql/src/test/results/clientnegative/database_drop_not_empty_restrict.q.out
3a712756c3
ql/src/test/results/clientnegative/dbtxnmgr_nodblock.q.out e417122929
ql/src/test/results/clientnegative/dbtxnmgr_nodbunlock.q.out 1264e33a6b
ql/src/test/results/clientnegative/dbtxnmgr_notablelock.q.out d2bcea06fb
ql/src/test/results/clientnegative/dbtxnmgr_notableunlock.q.out 8e7dc6a0c5
ql/src/test/results/clientnegative/deletejar.q.out ff77603fbf
ql/src/test/results/clientnegative/describe_xpath1.q.out ca8e5d076f
ql/src/test/results/clientnegative/describe_xpath2.q.out f1099c94cb
ql/src/test/results/clientnegative/describe_xpath3.q.out d29d0930a0
ql/src/test/results/clientnegative/describe_xpath4.q.out ec81c9c6b5
ql/src/test/results/clientnegative/disallow_incompatible_type_change_on1.q.out
68a7b97ccc
ql/src/test/results/clientnegative/disallow_incompatible_type_change_on2.q.out
a178040ea5
ql/src/test/results/clientnegative/drop_invalid_constraint1.q.out 7292f1f600
ql/src/test/results/clientnegative/drop_invalid_constraint2.q.out 9d20d628a7
ql/src/test/results/clientnegative/drop_invalid_constraint3.q.out 4754a4d14e
ql/src/test/results/clientnegative/drop_invalid_constraint4.q.out 0d2a80ba04
ql/src/test/results/clientnegative/drop_table_failure2.q.out c3d94a77fe
ql/src/test/results/clientnegative/drop_table_used_by_mv.q.out efc080e4e1
ql/src/test/results/clientnegative/drop_view_failure1.q.out 87d91ed94f
ql/src/test/results/clientnegative/druid_address.q.out c26eff3a8d
ql/src/test/results/clientnegative/druid_buckets.q.out ad381f2044
ql/src/test/results/clientnegative/druid_case.q.out b18f44f60c
ql/src/test/results/clientnegative/druid_datasource.q.out de170fdca2
ql/src/test/results/clientnegative/druid_datasource2.q.out 71371c3f56
ql/src/test/results/clientnegative/druid_location.q.out 7ee82627d9
ql/src/test/results/clientnegative/druid_partitions.q.out 81325a8088
ql/src/test/results/clientnegative/exchange_partition.q.out 42ca82b86e
ql/src/test/results/clientnegative/external1.q.out 8d47ccde89
ql/src/test/results/clientnegative/external2.q.out 88a3bb8de0
ql/src/test/results/clientnegative/external_jdbc_negative.q.out 45068bbc7a
ql/src/test/results/clientnegative/hms_using_serde_alter_table_update_columns.q.out
d0da178633
ql/src/test/results/clientnegative/insert_sorted.q.out fef40ee11a
ql/src/test/results/clientnegative/lockneg1.q.out cbcefa0dd5
ql/src/test/results/clientnegative/lockneg2.q.out 3e988b9f01
ql/src/test/results/clientnegative/lockneg3.q.out 1403c73a67
ql/src/test/results/clientnegative/lockneg4.q.out fa3e22bee5
ql/src/test/results/clientnegative/lockneg5.q.out 63b1bbc40a
ql/src/test/results/clientnegative/lockneg_query_tbl_in_locked_db.q.out
9de0b37f69
ql/src/test/results/clientnegative/lockneg_try_db_lock_conflict.q.out
0ebdb35055
ql/src/test/results/clientnegative/lockneg_try_lock_db_in_use.q.out
4d69f2805c
ql/src/test/results/clientnegative/materialized_view_drop.q.out f059e6de34
ql/src/test/results/clientnegative/materialized_view_drop2.q.out e3c705344d
ql/src/test/results/clientnegative/materialized_view_no_cbo_rewrite_2.q.out
ee946ae8f0
ql/src/test/results/clientnegative/materialized_view_no_supported_op_rewrite_2.q.out
7a9ca99fc0
ql/src/test/results/clientnegative/mm_convert.q.out 2463a56b86
ql/src/test/results/clientnegative/msck_repair_1.q.out 2566cc37b0
ql/src/test/results/clientnegative/msck_repair_2.q.out 2566cc37b0
ql/src/test/results/clientnegative/msck_repair_3.q.out 2566cc37b0
ql/src/test/results/clientnegative/msck_repair_4.q.out 3499bfeea6
ql/src/test/results/clientnegative/nested_complex_neg.q.out 200eee1255
ql/src/test/results/clientnegative/orc_change_fileformat.q.out f7c5667430
ql/src/test/results/clientnegative/orc_change_fileformat_acid.q.out
4a552c1f40
ql/src/test/results/clientnegative/orc_change_serde.q.out 88dfe44c3a
ql/src/test/results/clientnegative/orc_change_serde_acid.q.out a1a2805280
ql/src/test/results/clientnegative/orc_reorder_columns1.q.out b9f013094f
ql/src/test/results/clientnegative/orc_reorder_columns1_acid.q.out d72eb950c8
ql/src/test/results/clientnegative/orc_reorder_columns2.q.out a9aebe5bf7
ql/src/test/results/clientnegative/orc_reorder_columns2_acid.q.out 98cf32357a
ql/src/test/results/clientnegative/orc_replace_columns1.q.out a00e485be8
ql/src/test/results/clientnegative/orc_replace_columns1_acid.q.out 6269bb47b6
ql/src/test/results/clientnegative/orc_replace_columns2.q.out 67d23e827d
ql/src/test/results/clientnegative/orc_replace_columns2_acid.q.out 65848e2929
ql/src/test/results/clientnegative/orc_replace_columns3.q.out 03dd2e7d3a
ql/src/test/results/clientnegative/orc_replace_columns3_acid.q.out 5f81e92b5a
ql/src/test/results/clientnegative/orc_type_promotion1.q.out a833c07eee
ql/src/test/results/clientnegative/orc_type_promotion1_acid.q.out ae6f7e4fca
ql/src/test/results/clientnegative/orc_type_promotion2.q.out 785b949ef2
ql/src/test/results/clientnegative/orc_type_promotion2_acid.q.out 164cdfe9ab
ql/src/test/results/clientnegative/orc_type_promotion3.q.out df721cee61
ql/src/test/results/clientnegative/orc_type_promotion3_acid.q.out ee766fca99
ql/src/test/results/clientnegative/parquet_alter_part_table_drop_columns.q.out
4532a5d65e
ql/src/test/results/clientnegative/serde_regex.q.out faa5d7b12e
ql/src/test/results/clientnegative/serde_regex3.q.out 22146382a9
ql/src/test/results/clientnegative/special_character_in_tabnames_1.q.out
bacbda1019
ql/src/test/results/clientnegative/strict_managed_tables1.q.out 04b8fb430f
ql/src/test/results/clientnegative/strict_managed_tables2.q.out 286698d486
ql/src/test/results/clientnegative/strict_managed_tables3.q.out a5a82e03f9
ql/src/test/results/clientnegative/strict_managed_tables4.q.out 0bff565962
ql/src/test/results/clientnegative/strict_managed_tables5.q.out 4d9b5d0dcb
ql/src/test/results/clientnegative/strict_managed_tables6.q.out cf7786e1f5
ql/src/test/results/clientnegative/table_nonprintable_negative.q.out
d3d92dc99b
ql/src/test/results/clientnegative/temp_table_rename.q.out 4c24efd17e
ql/src/test/results/clientnegative/touch1.q.out 342a5052c4
ql/src/test/results/clientpositive/encrypted/encryption_move_tbl.q.out
f2fcf7fd53
ql/src/test/results/clientpositive/llap/resourceplan.q.out 69ba2171fb
ql/src/test/results/clientpositive/resourceplan.q.out 69ba2171fb
ql/src/test/results/compiler/errors/ambiguous_join_col.q.out e67496de12
Diff: https://reviews.apache.org/r/70876/diff/2/
Changes: https://reviews.apache.org/r/70876/diff/1-2/
Testing
-------
Unit tests are still running.
Thanks,
Miklos Gergely