SourabhBadhya commented on code in PR #4748:
URL: https://github.com/apache/hive/pull/4748#discussion_r1350424172
##########
ql/src/java/org/apache/hadoop/hive/ql/metadata/HiveStorageHandler.java:
##########
@@ -718,4 +719,18 @@ default ColumnInfo
getColumnInfo(org.apache.hadoop.hive.ql.metadata.Table hmsTab
"for a specific column.");
}
+ default boolean supportsMetadataDelete() {
+ return false;
+ }
+
+ default boolean
canPerformMetadataDelete(org.apache.hadoop.hive.ql.metadata.Table hmsTable,
SearchArgument searchArgument) {
+ throw new UnsupportedOperationException("Storage handler does not support
validation of metadata " +
+ " delete operation using search argument.");
+ }
+
+ default void performMetadataDelete(org.apache.hadoop.hive.ql.metadata.Table
hmsTable, SearchArgument searchArgument) {
Review Comment:
This function is not required now. Completely removed.
##########
ql/src/java/org/apache/hadoop/hive/ql/parse/UpdateDeleteSemanticAnalyzer.java:
##########
@@ -287,6 +299,29 @@ private void reparseAndSuperAnalyze(ASTNode tree, Table
mTable, ASTNode tabNameN
}
}
+ private void checkAndPerformStorageMetadataUpdate(Table table,
HiveStorageHandler storageHandler) {
+ if (!deleting() || storageHandler == null) {
+ return;
+ }
+ Map<String, TableScanOperator> topOps = getParseContext().getTopOps();
+ if (!topOps.containsKey(table.getTableName())) {
+ return;
+ }
+ ExprNodeGenericFuncDesc hiveFilter = getParseContext().getTopOps()
Review Comment:
Done.
##########
ql/src/java/org/apache/hadoop/hive/ql/parse/UpdateDeleteSemanticAnalyzer.java:
##########
@@ -271,6 +280,9 @@ private void reparseAndSuperAnalyze(ASTNode tree, Table
mTable, ASTNode tabNameN
rewrittenCtx.setEnableUnparse(false);
analyzeRewrittenTree(rewrittenTree, rewrittenCtx);
+ // Check if metadata delete is possible and convert the tasks to metadata
delete.
+ checkAndPerformStorageMetadataUpdate(mTable, storageHandler);
Review Comment:
Done.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]