mahesh kumar behera created HIVE-19089: ------------------------------------------
Summary: Create/Replicate Allocate write-id event Key: HIVE-19089 URL: https://issues.apache.org/jira/browse/HIVE-19089 Project: Hive Issue Type: Sub-task Components: repl, Transactions Affects Versions: 3.0.0 Reporter: mahesh kumar behera Assignee: mahesh kumar behera Fix For: 3.0.0 *EVENT_OPEN_TXN:* *Source Warehouse:* - Create new event type EVENT_OPEN_TXN with related message format etc. - When any transaction is opened either by auto-commit mode or multi-statement mode, need to capture this event. - Repl dump should read this event from EventNotificationTable and dump the message. *Target Warehouse:* - Repl load should read the event from the dump and get the message. - Open a txn in target warehouse. - Create a map of source txn ID against target txn ID and persist the same in metastore. There should be one map per replication policy (DBName.* incase of DB level replication, DBName.TableName incase of table level replication) *EVENT_COMMIT_TXN (Without writes)* Add new EVENT_COMMIT_TXN to log the metadata/data of all tables/partitions modified within the txn. *Source warehouse:* - Create EVENT_COMMIT_TXN event type with corresponding message format etc. *Target warehouse:* - Repl load should read this event from the dump. - Validate the source txn ID from the event using the Source-Target Txn ID map maintained in target metastore. Also, need to check if corresponding target txn ID is valid. - If valid, then apply the event and commit the corresponding target transaction. - This new event should be idempotent such that if it is applied twice, then second time it should be loop. *EVENT_ABORT_TXN* Source Warehouse: - Create new event type EVENT_ABORT_TXN with related message format etc. - Capture this event when abort the txn. - Repl dump should read this event from EventNotificationTable and dump the message. *Target Warehouse:* - Repl load should read the event from the dump and get the message. - Validate if source txn ID from the event is there in the source-target txn ID map. If not there, just noop the event. - If valid, then Abort the corresponding target txn and remove the entry from source-target txn ID map. All these new events should be idempotent such that if it is applied twice, then second time it should be noop. -- This message was sent by Atlassian JIRA (v7.6.3#76005)