phoenix icon indicating copy to clipboard operation
phoenix copied to clipboard

PHOENIX-7640 Refactor ReplicationLog for HA Groups

Open apurtell opened this issue 4 months ago • 0 comments

Refactor ReplicationLog so we can have an instance of it managing a group of replication logs for a given 'HA Group' (refer to design doc), for as many HA groups are are configured. We can call the result ReplicationLogGroup.

Prepare for store and forward by splitting ReplicationLogGroup into ReplicationLogGroup (manager + API for higher layers) and ReplicationLogGroupWriter (writer base class) and StandbyLogGroupWriter (synchronous replication impl) and StoreAndForwardLogGroupWriter (stub). ReplicationLogGroup will provide append() and sync() to higher layers and delegate to the StandbyLogGroupWriter instance or StoreAndForwardLogGroupWriter.

ReplicationLogGroupWriter is the abstract base class for StandbyLogGroupWriter and StoreAndForwardLogGroupWriter and contains most of the functionality formerly in ReplicationLog. StandbyLogGroupWriter is thin. StoreAndForwardLogGroupWriter is a stub.

apurtell avatar Jun 18 '25 22:06 apurtell