[ 
https://issues.apache.org/jira/browse/HIVE-19340?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

mahesh kumar behera updated HIVE-19340:
---------------------------------------
    Description: The transactions opened by applying EVENT_OPEN_TXN should 
never be aborted automatically due to time-out. Aborting of transaction started 
by replication task may leads to inconsistent state at target which needs 
additional overhead to clean-up. So, it is proposed to mark the transactions 
opened by replication task as special ones and shouldn't be aborted if heart 
beat is lost. This helps to ensure all ABORT and COMMIT events will always find 
the corresponding txn at target to operate.  (was:  
h1. Replicate ACID write Events
 * Create new EVENT_WRITE event with related message format to log the write 
operations with in a txn along with data associated.

 * Log this event when perform any writes (insert into, insert overwrite, load 
table, delete, update, merge, truncate) on table/partition.

 * If a single MERGE/UPDATE/INSERT/DELETE statement operates on multiple 
partitions, then need to log one event per partition.

 * DbNotificationListener should log this type of event to special metastore 
table named "MTxnWriteNotificationLog".

 * This table should maintain a map of txn ID against list of tables/partitions 
written by given txn.

 * The entry for a given txn should be removed by the cleaner thread that 
removes the expired events from EventNotificationTable.

h1. Replicate Commit Txn operation (with writes)

Add new EVENT_COMMIT_TXN to log the metadata/data of all tables/partitions 
modified within the txn.

*Source warehouse:*
 * This event should read the EVENT_WRITEs from "MTxnWriteNotificationLog" 
metastore table to consolidate the list of tables/partitions modified within 
this txn scope.

 * Based on the list of tables/partitions modified and table Write ID, need to 
compute the list of delta files added by this txn.

 * Repl dump should read this message and dump the metadata and delta files 
list.

*Target warehouse:*
 * Ensure snapshot isolation at target for on-going read txns which shouldn't 
view the data replicated from committed txn. (Ensured with open and allocate 
write ID events).)

> Disable timeout of transactions opened by replication task at target cluster
> ----------------------------------------------------------------------------
>
>                 Key: HIVE-19340
>                 URL: https://issues.apache.org/jira/browse/HIVE-19340
>             Project: Hive
>          Issue Type: Sub-task
>          Components: repl, Transactions
>    Affects Versions: 3.0.0
>            Reporter: mahesh kumar behera
>            Assignee: mahesh kumar behera
>            Priority: Major
>              Labels: ACID, DR, pull-request-available, replication
>             Fix For: 3.0.0
>
>
> The transactions opened by applying EVENT_OPEN_TXN should never be aborted 
> automatically due to time-out. Aborting of transaction started by replication 
> task may leads to inconsistent state at target which needs additional 
> overhead to clean-up. So, it is proposed to mark the transactions opened by 
> replication task as special ones and shouldn't be aborted if heart beat is 
> lost. This helps to ensure all ABORT and COMMIT events will always find the 
> corresponding txn at target to operate.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to