[ https://issues.apache.org/jira/browse/PHOENIX-7640?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Kyle Purtell updated PHOENIX-7640: ----------------------------------------- Description: Let's refactor ReplicationLog so we can have one instance of it managing a group of replication logs for a given 'HA Group' (refer to design doc). We can name the result ReplicationLogGroup. While in here let's prepare for store and forward by splitting ReplicationLogGroup into ReplicationLogGroup (manager + API for higher layers) and ReplicationLogGroupWriter (base class) and StandbyLogGroupWriter (synchronous replication impl) and StoreAndForwardLogGroupWriter (stub). ReplicationLogGroup will provide append() and sync() to higher layers and delegate to either a StandbyLogGroupWriter instance or StoreAndForwardLogGroupWriter. ReplicationLogGroupWriter will be the base class for StandbyLogGroupWriter and StoreAndForwardLogGroupWriter and will contain most of the functionality. StandbyLogGroupWriter will be thin. StoreAndForwardLogGroupWriter will be a stub. Feel free to suggest other potentially better names on the PR. was: Let's refactor ReplicationLog so we can have one instance of it managing a group of replication logs for a given 'HA Group' (refer to design doc). We can name the result ReplicationLogGroup. While in here let's prepare for store and forward by splitting ReplicationLogGroup into ReplicationLogGroup (manager + API for higher layers) and ReplicationLogGroupWriter (interface) and StandbyLogGroupWriter (synchronous replication impl) and StoreAndForwardLogGroupWriter (stub). ReplicationLogGroup will provide append() and sync() to higher layers and delegate to either a StandbyLogGroupWriter instance or StoreAndForwardLogGroupWriter. ReplicationLogGroupWriter will be the base class for StandbyLogGroupWriter and StoreAndForwardLogGroupWriter and will contain most of the functionality. StandbyLogGroupWriter will be thin. StoreAndForwardLogGroupWriter will be a stub. Feel free to suggest other potentially better names on the PR. > Refactor ReplicationLog for HA Groups > ------------------------------------- > > Key: PHOENIX-7640 > URL: https://issues.apache.org/jira/browse/PHOENIX-7640 > Project: Phoenix > Issue Type: Sub-task > Reporter: Andrew Kyle Purtell > Assignee: Andrew Kyle Purtell > Priority: Major > > Let's refactor ReplicationLog so we can have one instance of it managing a > group of replication logs for a given 'HA Group' (refer to design doc). We > can name the result ReplicationLogGroup. > While in here let's prepare for store and forward by splitting > ReplicationLogGroup into ReplicationLogGroup (manager + API for higher > layers) and ReplicationLogGroupWriter (base class) and StandbyLogGroupWriter > (synchronous replication impl) and StoreAndForwardLogGroupWriter (stub). > ReplicationLogGroup will provide append() and sync() to higher layers and > delegate to either a StandbyLogGroupWriter instance or > StoreAndForwardLogGroupWriter. ReplicationLogGroupWriter will be the base > class for StandbyLogGroupWriter and StoreAndForwardLogGroupWriter and will > contain most of the functionality. StandbyLogGroupWriter will be thin. > StoreAndForwardLogGroupWriter will be a stub. > Feel free to suggest other potentially better names on the PR. -- This message was sent by Atlassian Jira (v8.20.10#820010)