Details
-
Sub-task
-
Status: Closed
-
Major
-
Resolution: Fixed
-
3.0.0
Description
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.
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).
Attachments
Attachments
Issue Links
- causes
-
HIVE-20070 ptest optimization - Replicate ACID/MM tables write operations.
- Closed
-
HIVE-20131 SQL Script changes for creating txn write notification in 3.2.0 files
- Closed
- links to