[ 
https://issues.apache.org/jira/browse/DERBY-3428?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12571404#action_12571404
 ] 

Jørgen Løland commented on DERBY-3428:
--------------------------------------

Hi Narayanan,

The patch basically looks good. A few minor comments:

1. MasterController: "to shutdown the database" written twice.
2. Database: @throws tag referst to SQLException while a StandardException is 
thrown
3. I am a little concerned that StandardException has to be introduced to the 
o.a.d.database.Database interface. I read the comments in that file a couple of 
times, and it seems that this interface is for methods that are external, like 
system procedures. I think o.a.d.iapi.db.Database would be more fitting since 
failover can only be called intarnally (hence i(nternal)api). This does not 
only apply to the failover method, but to all the replication methods.

It's OK with me to solve 3. in a follow-up patch since it involves code that 
was not touched by this patch. You mention that stream.close is not handled in 
this patch, so I guess a follow-up patch (or patch in another jira) is needed 
anyway.

> Doing a replication failover should shutdown the database and the connection 
> should no longer be available
> ----------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-3428
>                 URL: https://issues.apache.org/jira/browse/DERBY-3428
>             Project: Derby
>          Issue Type: Bug
>          Components: Replication
>    Affects Versions: 10.4.0.0
>            Reporter: V.Narayanan
>            Assignee: V.Narayanan
>         Attachments: Derby3428.diff, Derby3428.stat
>
>
> Oystein says (as part of comments in Derby-3205)
> After executing a failover, I am told that the database is shut down, but I 
> still able to use the connection to access the database:
> ij version 10.4
> ij> connect 'jdbc:derby:masterDB;user=oystein;password=pass';
> ij> call syscs_util.syscs_freeze_database();
> 0 rows inserted/updated/deleted
> ij> connect 
> 'jdbc:derby:masterDB;user=oystein;password=pass;startMaster=true;slaveHost=localhost';
> ij(CONNECTION1)> call syscs_util.syscs_unfreeze_database();
> 0 rows inserted/updated/deleted
> ij(CONNECTION1)> connect 
> 'jdbc:derby:masterDB;user=oystein;password=pass;failover=true';
> ERROR XRE20: Failover performed successfully for database 'null', the 
> database has been shutdown.
> ij(CONNECTION1)> select * from t;
> I
> -----------
> 1
> 2
> 3
> 4
> 5
> 6
> 7
> 8
> 9
> 10
> 10
> 11 rows selected
> ij(CONNECTION1)>

-- 
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