[
https://issues.apache.org/jira/browse/HIVE-21886?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
mahesh kumar behera reassigned HIVE-21886:
------------------------------------------
> REPL - With table list - Handle rename events during replace policy
> -------------------------------------------------------------------
>
> Key: HIVE-21886
> URL: https://issues.apache.org/jira/browse/HIVE-21886
> Project: Hive
> Issue Type: Sub-task
> Components: repl
> Reporter: mahesh kumar behera
> Assignee: mahesh kumar behera
> Priority: Major
> Labels: DR, Replication
>
> REPL DUMP fetches the events from NOTIFICATION_LOG table based on regular
> expression + inclusion/exclusion list. So, in case of rename table event, the
> event will be ignored if old table doesn't match the pattern but the new
> table should be bootstrapped. REPL DUMP should have a mechanism to detect
> such tables and automatically bootstrap with incremental replication.Also, if
> renamed table is excluded from replication policy, then need to drop the old
> table at target as well.
> There are 4 scenarios that needs to be handled.
> # Both new name and old name satisfies the table name pattern filter.
> ## No need to do anything. The incremental event for rename should take care
> of the replication.
> # Both the names does not satisfy the table name pattern filter.
> ## Both the names are not in the scope of the policy and this nothing needs
> to be done.
> # New name satisfies the pattern but the old name does not.
> ## The table will not be present at the target.
> ## Rename event handler for dump should detect this case and add the new
> table name to the list of table for bootstrap.
> ## All the events related to the table (new name) should be ignored.
> ## If there is a drop event for the table (with new name), then remove the
> table from the list of tables to be bootstrapped.
> ## In case of rename (double rename)
> ### If the new name satisfies the table pattern, then add the new name to
> the list of tables to be bootstrapped and remove the old name from the list
> of tables to be bootstrapped.
> ### If the new name does not satisfies then just removed the table name from
> the list of tables to be bootstrapped.
> # New name does not satisfies the pattern but the old name satisfies.
> ## Change the rename event to a drop event.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)