[
https://issues.apache.org/jira/browse/DERBY-3051?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12527999
]
Øystein Grøvlen commented on DERBY-3051:
----------------------------------------
Patch looks good. I have only nits on my list:
1. LogToFile#inReplicationMasterMode:
LogToFile also has a member inSlaveMode. Maybe that should be
called inReplicationSlaveMode for uniformity? Also, I think the
declaration of these two member fields should be placed together.
2. LogToFile#appendLogRecord:
Any particular reason that MasterFactory#appendLogRecord has a
different ordering of the parameters than
LogToFile#appendLogRecord. I think the code would be easier to
read if the methods had the same parameter ordering.
3. LogToFile#flush:
What does the '?' behind INVALID_LOG_INSTANT mean?
4. LogToFile#startReplicationMasterRole, javadoc:
I would say 'pass log records' instead of 'send ...' in order to
make it clearer that the MasterFactory is on the same node, and
that we here are not talking about sending it over the network to
the MasterFactory.
5. LogToFile#stopReplicationMasterRole, javadoc:
Seems not right to mention ReadOnly here since that is a different
implementation of LogFactory.
6. LogFactory#(start|stop)ReplicationMasterRole, javadoc:
The javadoc references to the corresponding ReadOnly methods does
not seem necessary to me.
> Replication: Modify logging subsystem to append log records to the
> replication buffer when in replication master mode
> ---------------------------------------------------------------------------------------------------------------------
>
> Key: DERBY-3051
> URL: https://issues.apache.org/jira/browse/DERBY-3051
> Project: Derby
> Issue Type: Sub-task
> Components: Services, Store
> Affects Versions: 10.4.0.0
> Reporter: Jørgen Løland
> Assignee: Jørgen Løland
> Attachments: derby_3051_1.diff, derby_3051_1.stat
>
>
> When Derby has the replication master role for a database 'x', it should ship
> all log records generated for this database to the Derby with the slave role.
> A replication buffer was added to Derby in DERBY-2926. This issue is for
> modifying the logging subsystem to append log records to this buffer every
> time a log records is appended to the disk buffer (LogAccessFile). This will,
> of course, only be done if it has the master role.
> Currently, I have identified two modifications that will be required in
> LogToFile:
> * LogToFile#appendLogRecord needs to append to the replication buffer after
> appending to the disk buffer
> * LogToFile#flush (i.e., the method used to force buffered log records to
> disk) must notify the Master Controller (DERBY-2977) that a flush has taken
> place. The MasterController will decide if any action is required because of
> this.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.