[ 
https://issues.apache.org/jira/browse/DERBY-3205?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jørgen Løland updated DERBY-3205:
---------------------------------

    Attachment: stopSlave_v1c.diff
                stopSlave_v1c.stat

Thanks for reviewing stopSlave v1b Øystein.

I have addressed most of your comments in patch 1c. Comments:

2e: When a database is shut down, the TransactionResource needs to be cleaned. 
I found no other way of doing this than setting up a connection.

3a: I don't know why the message is logged twice in derby.log. The same applies 
to startSlave. I will fix this in a later patch.

4a: You are right, but this is not harmful since recover() is only allowed to 
redo log files that have been completed. The only problem with letting recover 
complete redo of a log file is that it may take a little longer before the 
database is shut down. To fix this, we could use a reference to the recovery 
thread and interrupt it, or we could make FileLogger check for the 
replicationSlaveException between every redone log record. However, I don't 
think this added complexity is justified at the moment. At least not until we 
get feedback that this is unacceptable. Unless you feel strongly about it, I 
will not address this now.

5b: XRE40 is thrown from locations where the database name is unknown (in 
BasicDatabase). I'm reluctant to add the dbname to the method signature only to 
get it into the exception text, especially since this exception is only thrown 
from connection-attempts that have to specify the db name.

> Replication: Add connection url command options for starting, stopping slave 
> and for failover
> ---------------------------------------------------------------------------------------------
>
>                 Key: DERBY-3205
>                 URL: https://issues.apache.org/jira/browse/DERBY-3205
>             Project: Derby
>          Issue Type: Sub-task
>          Components: JDBC
>    Affects Versions: 10.4.0.0
>            Reporter: Jørgen Løland
>            Assignee: V.Narayanan
>         Attachments: derby-3205_startslave_dontcommit.diff, 
> derby-3205_startslave_dontcommit.stat, 
> failover_impl_3205_NotForCommit_v1.diff, 
> failover_impl_3205_NotForCommit_v1.stat, failover_impl_3205_v1.diff, 
> failover_impl_3205_v1.stat, failover_impl_3205_v2.diff, 
> failover_impl_3205_v2.stat, Socket_Close_Fix_v1.diff, 
> Socket_Close_Fix_v1.stat, startSlave_1a.diff, startSlave_1a.stat, 
> startSlave_1b.diff, startSlave_1b.stat, startSlave_1c.diff, 
> startSlave_1d.diff, StopSlave_impl_3205_NotForCommit_v1.diff, 
> StopSlave_impl_3205_NotForCommit_v1.stat, stopSlave_v1a.diff, 
> stopSlave_v1a.stat, stopSlave_v1b.diff, stopSlave_v1b.stat, 
> stopSlave_v1c.diff, stopSlave_v1c.stat
>
>
> Add commands to start and stop the replication slave using properties or 
> connection url. Example:
> 'jdbc:derby:<host><dbname>;startSlave=true';
> 'jdbc:derby:<host><dbname>;stopSlave=true';
> 'jdbc:derby:<host><dbname>;failover=true;
> Connection url options that must be recognized:
> startSlave=true
> stopSlave=true
> failover=true
> slaveHost=<host> (optional, defaults to localhost) (only for startSlave)
> slavePort=<port> (optional, defaults to 8001) (only for startSlave)
> See functional specification on Derby-2872 for further details.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to