You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Øystein Grøvlen (JIRA)" <ji...@apache.org> on 2008/02/08 17:22:08 UTC

[jira] Commented: (DERBY-3383) Replication: stopSlave boots database?

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

Øystein Grøvlen commented on DERBY-3383:
----------------------------------------

Code looks good.  

One minor nit is that it is a bit inconsistent to keep handleDBNotFound for usage in one single case, while there are similar code where the checking is done in-place. Maybe the exception to be thrown could be parameterized.

When I try to reproduce the problem specified, the following now happens:

ij version 10.4
ij> connect 'jdbc:derby:slaveDB;user=oystein;password=pass;stopSlave=true';
> IJ ERROR: Unable to establish connection
ij> connect 'jdbc:derby:slaveDB;user=oystein;password=pass;startSlave=true';
ERROR XRE08: Replication slave mode started successfully for database 'slaveDB'. Connection refused because the database is in replication slave mode. 

This was not quite what I expected.  Below is the stack trace. It may be ij which interfering in some way here,
but I am hesitant to commit this patch until I know more.

org.apache.derby.impl.tools.ij.ijException: Unable to establish connection
    at org.apache.derby.impl.tools.ij.ijException.objectWasNull(ijException.java:135)
       at org.apache.derby.tools.JDBCDisplayUtil.checkNotNull(JDBCDisplayUtil.java:732)
        at org.apache.derby.impl.tools.ij.ij.haveConnection(ij.java:277)
        at org.apache.derby.impl.tools.ij.ij.executeImmediate(ij.java:299)
      at org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:508)
   at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(utilMain.java:350)
     at org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:248)
        at org.apache.derby.impl.tools.ij.Main.go(Main.java:215)
        at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:181)
  at org.apache.derby.impl.tools.ij.Main.main(Main.java:73)
       at org.apache.derby.tools.ij.main(ij.java:59)
   at org.apache.derby.iapi.tools.run.main(run.java:51)

> Replication: stopSlave boots database?
> --------------------------------------
>
>                 Key: DERBY-3383
>                 URL: https://issues.apache.org/jira/browse/DERBY-3383
>             Project: Derby
>          Issue Type: Bug
>          Components: Replication
>    Affects Versions: 10.4.0.0
>            Reporter: Øystein Grøvlen
>            Assignee: Jørgen Løland
>         Attachments: derby-3383-1a.diff, derby-3383-1a.stat
>
>
> Looks like stopSlave on a not booted database leaves some traces:
> ij version 10.4
> ij> connect 'jdbc:derby:slaveDB;user=oystein;password=pass;stopSlave=true';
> ERROR XRE40: Could not perform operation because the database is not in replication slave mode.
> ij> connect 'jdbc:derby:slaveDB;user=oystein;password=pass;startSlave=true';
> ERROR XRE09: Cannot start replication slave mode for database 'slaveDB'. The database has already been booted. 

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