sankarh commented on a change in pull request #688: HIVE-21886 : REPL - With
table list - Handle rename events during replace policy
URL: https://github.com/apache/hive/pull/688#discussion_r297604088
##########
File path:
ql/src/java/org/apache/hadoop/hive/ql/parse/repl/dump/events/AlterTableHandler.java
##########
@@ -123,8 +148,21 @@ private boolean handleForTableLevelReplication(Context
withinContext) {
return false;
}
+ // All the subsequent events on this table newName are going to be
skipped, so the rename is also skipped.
+ if (isSetForBootstrapByReplaceHandler(withinContext, newName)) {
+ // If the old table satisfies the new policy and is not in the list of
tables to be bootstrapped
+ // (as per previous check based on oldTableIsPresent), then drop it.
+ if (ReplUtils.tableIncludedInReplScope(withinContext.replScope,
oldName)) {
+ scenario = Scenario.DROP;
+ LOG.info("Table " + oldName + " will be dropped as the table " +
newName + " will be bootstrapped.");
+ return true;
Review comment:
I think, we should also add newName to the bootstrapTablesList. I cannot
think of any specific case but guess it may cause DROP event for any
intermediate table name if we have multiple renames. Anyways, it is safe to
have it in the list so that it is fool-proof for oldTableIsPresent=true flows.
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]