Return-Path: Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: (qmail 5249 invoked from network); 29 Jan 2008 13:21:57 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 29 Jan 2008 13:21:57 -0000 Received: (qmail 1385 invoked by uid 500); 29 Jan 2008 13:21:46 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 1361 invoked by uid 500); 29 Jan 2008 13:21:46 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 1348 invoked by uid 99); 29 Jan 2008 13:21:46 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 29 Jan 2008 05:21:46 -0800 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 29 Jan 2008 13:21:27 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 9398371420D for ; Tue, 29 Jan 2008 05:21:34 -0800 (PST) Message-ID: <21434614.1201612894602.JavaMail.jira@brutus> Date: Tue, 29 Jan 2008 05:21:34 -0800 (PST) From: =?utf-8?Q?J=C3=B8rgen_L=C3=B8land_=28JIRA=29?= To: derby-dev@db.apache.org Subject: [jira] Commented: (DERBY-3361) Specifying a non-existant slaveHost for startSlave seemingly succeeds in starting slave mode. In-Reply-To: <12173009.1201608155673.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/DERBY-3361?page=3Dcom.atlassian= .jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=3D1256= 3513#action_12563513 ]=20 J=C3=B8rgen L=C3=B8land commented on DERBY-3361: -------------------------------------- I think that's a good suggestion, =C3=98ystein. Since the thread that boots= store and starts replication functionality cannot contact SlaveDatabase [1= ], I think the best way to do this is to let the client thread pull the inf= ormation from the SlaveController. An implication of this solution is, of course, that the connection attempt = trying to start the slave will hang until the master has been started. I th= ink that will be acceptable. [1] Until the client thread leaves SlaveDatabase#boot, the Database service= cannot be found by calling Monitor.findService > Specifying a non-existant slaveHost for startSlave seemingly succeeds in = starting slave mode. > -------------------------------------------------------------------------= -------------------- > > Key: DERBY-3361 > URL: https://issues.apache.org/jira/browse/DERBY-3361 > Project: Derby > Issue Type: Bug > Components: Replication > Affects Versions: 10.4.0.0 > Environment: Trunk (615841) + patch DERBY-3205/stopSlave_v1b=20 > Reporter: Ole Solberg > Assignee: J=C3=B8rgen L=C3=B8land > > Specifying a non-existant slaveHost for startSlave seemingly succeeds in = starting slave mode. > -------------------------------------------------------------------------= ---------------------------------------------- > CONNECT 'jdbc:derby://atum11:9999/test;startSlave=3Dtrue;slaveHost=3DnoS= uchHost;slavePort=3D8989'; > ERROR XRE08: DERBY SQL error: SQLCODE: -1, SQLSTATE: XRE08, SQLERRMC: Rep= lication slave mode started successfully for database 'test'. Connection re= fused because the database is in replication slave mode.=20 > Slave derby.log shows a NPE: > -------------------------------------- > 2008-01-29 11:52:40.050 GMT: > Booting Derby version The Apache Software Foundation - Apache Derby - 10= .4.0.0 alpha - (615841M): instance c013800d-0117-c563-d051-000003bf6570 > on database directory /export/home/tmp/os136789/Replication_common_Trunk/= slave/test =20 > Database Class Loader started - derby.database.classpath=3D'' > 2008-01-29 11:52:40.308 GMT: > Shutting down instance c013800d-0117-c563-d051-000003bf6570 > ---------------------------------------------------------------- > ---------------------------------------------------------------- > 2008-01-29 11:52:40.320 GMT: > Booting Derby version The Apache Software Foundation - Apache Derby - 10= .4.0.0 alpha - (615841M): instance a816c00e-0117-c563-d051-000003bf6570 > on database directory /export/home/tmp/os136789/Replication_common_Trunk/= slave/test =20 > 2008-01-29 11:52:40.814 GMT Thread[DRDAConnThread_2,5,main] Cleanup actio= n starting > ERROR XRE08: Replication slave mode started successfully for database 'te= st'. Connection refused because the database is in replication slave mode.= =20 > =09at org.apache.derby.iapi.error.StandardException.newException(Standard= Exception.java:290) > =09at org.apache.derby.impl.jdbc.EmbedConnection.(EmbedConnection.j= ava:423) > =09at org.apache.derby.impl.jdbc.EmbedConnection30.(EmbedConnection= 30.java:73) > =09at org.apache.derby.impl.jdbc.EmbedConnection40.(EmbedConnection= 40.java:54) > =09at org.apache.derby.jdbc.Driver40.getNewEmbedConnection(Driver40.java:= 68) > =09at org.apache.derby.jdbc.InternalDriver.connect(InternalDriver.java:21= 1) > =09at org.apache.derby.jdbc.AutoloadedDriver.connect(AutoloadedDriver.jav= a:119) > =09at org.apache.derby.impl.drda.Database.makeConnection(Database.java:23= 4) > =09at org.apache.derby.impl.drda.DRDAConnThread.getConnFromDatabaseName(D= RDAConnThread.java:1346) > =09at org.apache.derby.impl.drda.DRDAConnThread.verifyUserIdPassword(DRDA= ConnThread.java:1296) > =09at org.apache.derby.impl.drda.DRDAConnThread.parseSECCHK(DRDAConnThrea= d.java:3033) > =09at org.apache.derby.impl.drda.DRDAConnThread.parseDRDAConnection(DRDAC= onnThread.java:1090) > =09at org.apache.derby.impl.drda.DRDAConnThread.processCommands(DRDAConnT= hread.java:932) > =09at org.apache.derby.impl.drda.DRDAConnThread.run(DRDAConnThread.java:2= 77) > Cleanup action completed > 2008-01-29 11:52:40.816 GMT Thread[DRDAConnThread_2,5,main] Cleanup actio= n starting > ERROR XRE08: Replication slave mode started successfully for database 'te= st'. Connection refused because the database is in replication slave mode.= =20 > =09at org.apache.derby.iapi.error.StandardException.newException(Standard= Exception.java:290) > =09at org.apache.derby.impl.jdbc.EmbedConnection.(EmbedConnection.j= ava:423) > =09at org.apache.derby.impl.jdbc.EmbedConnection30.(EmbedConnection= 30.java:73) > =09at org.apache.derby.impl.jdbc.EmbedConnection40.(EmbedConnection= 40.java:54) > =09at org.apache.derby.jdbc.Driver40.getNewEmbedConnection(Driver40.java:= 68) > =09at org.apache.derby.jdbc.InternalDriver.connect(InternalDriver.java:21= 1) > =09at org.apache.derby.jdbc.AutoloadedDriver.connect(AutoloadedDriver.jav= a:119) > =09at org.apache.derby.impl.drda.Database.makeConnection(Database.java:23= 4) > =09at org.apache.derby.impl.drda.DRDAConnThread.getConnFromDatabaseName(D= RDAConnThread.java:1346) > =09at org.apache.derby.impl.drda.DRDAConnThread.verifyUserIdPassword(DRDA= ConnThread.java:1296) > =09at org.apache.derby.impl.drda.DRDAConnThread.parseSECCHK(DRDAConnThrea= d.java:3033) > =09at org.apache.derby.impl.drda.DRDAConnThread.parseDRDAConnection(DRDAC= onnThread.java:1090) > =09at org.apache.derby.impl.drda.DRDAConnThread.processCommands(DRDAConnT= hread.java:932) > =09at org.apache.derby.impl.drda.DRDAConnThread.run(DRDAConnThread.java:2= 77) > Cleanup action completed > 2008-01-29 11:52:40.816 GMT Thread[DRDAConnThread_2,5,main] (DATABASE =3D= test), (DRDAID =3D {1}), Replication slave mode started successfully for d= atabase 'test'. Connection refused because the database is in replication s= lave mode.=20 > New exception raised during cleanup null > java.lang.NullPointerException > =09at org.apache.derby.impl.services.replication.slave.SlaveController.st= opSlave(SlaveController.java:259) > =09at org.apache.derby.impl.services.replication.slave.SlaveController.st= opSlave(SlaveController.java:287) > =09at org.apache.derby.impl.db.SlaveDatabase.stop(SlaveDatabase.java:149) > =09at org.apache.derby.impl.services.monitor.TopService.stop(TopService.j= ava:405) > =09at org.apache.derby.impl.services.monitor.TopService.shutdown(TopServi= ce.java:349) > =09at org.apache.derby.impl.services.monitor.BaseMonitor.shutdown(BaseMon= itor.java:235) > =09at org.apache.derby.impl.db.DatabaseContextImpl.cleanupOnError(Databas= eContextImpl.java:60) > =09at org.apache.derby.iapi.services.context.ContextManager.cleanupOnErro= r(ContextManager.java:330) > =09at org.apache.derby.impl.jdbc.TransactionResourceImpl.cleanupOnError(T= ransactionResourceImpl.java:419) > =09at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(= TransactionResourceImpl.java:337) > =09at org.apache.derby.impl.jdbc.EmbedConnection.handleException(EmbedCon= nection.java:1859) > =09at org.apache.derby.impl.jdbc.EmbedConnection.handleStopReplicationSla= ve(EmbedConnection.java:747) > =09at org.apache.derby.impl.jdbc.EmbedConnection.(EmbedConnection.j= ava:296) > =09at org.apache.derby.impl.jdbc.EmbedConnection30.(EmbedConnection= 30.java:73) > =09at org.apache.derby.impl.jdbc.EmbedConnection40.(EmbedConnection= 40.java:54) > =09at org.apache.derby.jdbc.Driver40.getNewEmbedConnection(Driver40.java:= 68) > =09at org.apache.derby.jdbc.InternalDriver.connect(InternalDriver.java:21= 1) > =09at org.apache.derby.jdbc.AutoloadedDriver.connect(AutoloadedDriver.jav= a:119) > =09at org.apache.derby.impl.db.SlaveDatabase.handleShutdown(SlaveDatabase= .java:317) > =09at org.apache.derby.impl.db.SlaveDatabase.access$200(SlaveDatabase.jav= a:73) > =09at org.apache.derby.impl.db.SlaveDatabase$SlaveDatabaseBootThread.run(= SlaveDatabase.java:293) > =09at java.lang.Thread.run(Thread.java:619) > Cleanup action completed --=20 This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.