[
https://issues.apache.org/jira/browse/DERBY-3064?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12530922
]
V.Narayanan commented on DERBY-3064:
------------------------------------
While working on creating the handleExceptions method in
MasterController, I understood that there are two ways of
doing this.
1) Make LogShipper throw a StandardException in which case we
can add more specific information in the exception, for e.g.
When a NoSuchElementException in the run() method of the
LogShipper class we could create a StandardException that
contains a text that says
"Error occurred while trying to retrieve log chunks from the
log buffer"
2) If we however throw it as the NoSuchElementException, in the
handleExceptions method all we would say is that
"Error occurred during log shipping"
The master controller I realize does not need to do much in this
case except for wrap it in the StandardException and throw it.
2) Would be useful if we want the Master controller to do a exception
specific action. This case would arise when we get an IOException
during transmission of the log record.Since the MasterController is what
creates the ReplicationNetworkMessageTransmit instance it should be
responsible for reconnect. In certain other cases all the master controller
would do is to throw the exception back.
We can also argue in the favour of 1) saying that to do a
transmitter.initConnection()
why would you go back to the MasterController. We are after all not
re-initializing
the connection. We are attempting a re-connect in the already initialized
network framework. If the reconnection fails we can throw this exception
then.
I am tending towards 1) since I do not feel it would be right for the
LogShipper to go
to the MasterController for all the exceptions it gets, and atleast not for
attempting a
reconnect in the network framework.
> Implement the LogShipper that will enable the shipping of Log records from
> the master to the slave
> --------------------------------------------------------------------------------------------------
>
> Key: DERBY-3064
> URL: https://issues.apache.org/jira/browse/DERBY-3064
> Project: Derby
> Issue Type: Sub-task
> Reporter: V.Narayanan
> Assignee: V.Narayanan
> Attachments: LogShipperImpl_v1.diff, LogShipperImpl_v1.stat,
> LogShipperImpl_v2.diff, LogShipperImpl_v2.stat
>
>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.