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 TomohitoNakayama <to...@basil.ocn.ne.jp> on 2005/05/13 16:21:21 UTC

upgrading trouble ... (Re: Patch again for DERBY-167.)

Hello.

I describe detail ...


I tried to hard upgrade database , whose name is "oldver"and created by 
derby10.0.2.1 ,
to version of current developing derby as next.

Judging from derby10.0.2.1 could connect to oldver after upgrading,
I think hard updating version oldver was failed.
//And my modification of DERBY-167 does not work though hard upgrade was 
executed.

============================


中山智仁@Arkat ~/derbyUser/20050513
$ ijOld.bat

c:\ProgramDev\derbyUser\20050513>set 
DERBY_INSTALL=C:\ProgramDev\derby10.0.2.1\lib\
c:\ProgramDev\derbyUser\20050513>set 
DERBY_INSTALL=C:\ProgramDev\derby10.0.2.1\lib\
c:\ProgramDev\derbyUser\20050513>FOR %X in 
("C:\ProgramDev\derby10.0.2.1\lib\")
DO SET DERBY_INSTALL=%~sX
c:\ProgramDev\derbyUser\20050513>SET 
DERBY_INSTALL=C:\PROGRA~2\DERBY1~1.1\lib\
c:\ProgramDev\derbyUser\20050513>set 
CLASSPATH=C:\PROGRA~2\DERBY1~1.1\lib\\derby.jar;C:\PROGRA~2\DERBY1~1.1\lib\\derbytools.jar;
c:\ProgramDev\derbyUser\20050513>java -Dij.protocol=jdbc:derby: 
org.apache.derby.tools.ij
ij version 10.0 (C) Copyright IBM Corp. 1997, 2004.
ij> connect 'jdbc:derby:oldver;create=true';
ij> exit;


中山智仁@Arkat ~/derbyUser/20050513
$ ij.bat
c:\ProgramDev\derbyUser\20050513>set 
DERBY_INSTALL=c:\ProgramDev\derby\trunk\
c:\ProgramDev\derbyUser\20050513>set 
DERBY_INSTALL=c:\ProgramDev\derby\trunk\jars\sane
c:\ProgramDev\derbyUser\20050513>FOR %X in 
("c:\ProgramDev\derby\trunk\jars\sane") DO SET DERBY_INSTALL=%~sX
c:\ProgramDev\derbyUser\20050513>SET 
DERBY_INSTALL=c:\PROGRA~2\derby\trunk\jars\sane
c:\ProgramDev\derbyUser\20050513>set 
CLASSPATH=c:\PROGRA~2\derby\trunk\jars\sane\derby.jar;c:\PROGRA~2\derby\trunk\jars\sane\derbytools.jar;
c:\ProgramDev\derbyUser\20050513>java -Dij.protocol=jdbc:derby: -Dderby.database
.allowPreReleaseUpgrade=true org.apache.derby.tools.ij
ij version 10.1
ij> connect 'jdbc:derby:oldver;update=true';
URL Attribute [update=true]
   Attribute is unknown to Derby.
ij> connect 'jdbc:derby:oldver;upgrade=true';
ij(CONNECTION1)> exit;

中山智仁@Arkat ~/derbyUser/20050513
$ ijOld.bat
c:\ProgramDev\derbyUser\20050513>set 
DERBY_INSTALL=C:\ProgramDev\derby10.0.2.1\lib\
c:\ProgramDev\derbyUser\20050513>set 
DERBY_INSTALL=C:\ProgramDev\derby10.0.2.1\lib\
c:\ProgramDev\derbyUser\20050513>FOR %X in 
("C:\ProgramDev\derby10.0.2.1\lib\")DO SET DERBY_INSTALL=%~sX
c:\ProgramDev\derbyUser\20050513>SET 
DERBY_INSTALL=C:\PROGRA~2\DERBY1~1.1\lib\
c:\ProgramDev\derbyUser\20050513>set 
CLASSPATH=C:\PROGRA~2\DERBY1~1.1\lib\\derby.jar;C:\PROGRA~2\DERBY1~1.1\lib\\derbytools.jar;
c:\ProgramDev\derbyUser\20050513>java -Dij.protocol=jdbc:derby: 
org.apache.derby.tools.ij
ij version 10.0 (C) Copyright IBM Corp. 1997, 2004.
ij> connect 'jdbc:derby:oldver';
ij>

============================

And more, if I does not execute mitaken command "connect 
'jdbc:derby:oldver;update=true';",
I didn't see above phenomena.
//And my modification of DERBY-167 works after hard upgrade.

And more I wonder why prompt was showd as "ij(CONNECTION1)>".....


Best regards.



/*

         Tomohito Nakayama
         tomonaka@basil.ocn.ne.jp
         tomohito@rose.zero.ad.jp

         Naka
         http://www5.ocn.ne.jp/~tomohito/TopPage.html

*/
----- Original Message ----- 
From: "TomohitoNakayama" <to...@basil.ocn.ne.jp>
To: "Derby Development" <de...@db.apache.org>
Sent: Friday, May 13, 2005 6:56 AM
Subject: Re: Patch again for DERBY-167.


> Hello.
>
> Daniel John Debrunner wrote:
>> Hard upgrade works currently, I checked in a manual test under
>> java/testing/org/apache/derbyTesting/upgradeTests.
>
> Do you means that upgrade=true option surely update DD_Version in database 
> ?
> If so, I might mistake what happened at my testing.
>
> Any way , I will check hardupgrade test again.
>
>
> Best regards.
>
> /*
>
>         Tomohito Nakayama
>         tomonaka@basil.ocn.ne.jp
>         tomohito@rose.zero.ad.jp
>
>         Naka
>         http://www5.ocn.ne.jp/~tomohito/TopPage.html
>
> */
> ----- Original Message ----- 
> From: "Daniel John Debrunner" <dj...@debrunners.com>
> To: "Derby Development" <de...@db.apache.org>
> Sent: Friday, May 13, 2005 1:23 AM
> Subject: Re: Patch again for DERBY-167.
>
>
>> TomohitoNakayama wrote:
>>> Hello.
>>>
>>>
>>> I send new patch for DERBY-167.
>>> Please review it again.
>>>
>>>
>>> I have one question.
>>>
>>> There seems to be NO implementation to update externalized DD_Version.
>>> So now, hardupgrade does not works and we can't use BY DEFAULT  .
>>>
>>> Should it be implemented  in this task ?
>>>
>>> I have hesitation about updating version info myself ....
>>
>> I don't understand your question.
>>
>> In the previous e-mails I had thought that the only upgrade change
>> required was the checkVersion if specifying BY DEFAULT.
>>
>>
>> Hard upgrade works currently, I checked in a manual test under
>> java/testing/org/apache/derbyTesting/upgradeTests. It doesn't run as
>> part of the test harness and thius is not part of derbyall. This is
>> because it boots several JVMs sequentially with different class paths
>> (e.g. old version and new version). There is a shell script to run the
>> test, runphases.ksh
>>
>> Dan.
>>
>>
>>
>>
>>
>> -- 
>> No virus found in this incoming message.
>> Checked by AVG Anti-Virus.
>> Version: 7.0.308 / Virus Database: 266.11.9 - Release Date: 2005/05/12
>>
> 

Re: upgrading trouble ... (Re: Patch again for DERBY-167.)

Posted by Daniel John Debrunner <dj...@debrunners.com>.
TomohitoNakayama wrote:

> Hello.
>  

> ij version 10.1
> ij> connect 'jdbc:derby:oldver;update=true';
> URL Attribute [update=true]
>    Attribute is unknown to Derby.
> ij> connect 'jdbc:derby:oldver;upgrade=true';
> ij(CONNECTION1)> exit;

>  
> And more, if I does not execute mitaken command "connect
> 'jdbc:derby:oldver;update=true';",
> I didn't see above phenomena.
> //And my modification of DERBY-167 works after hard upgrade.
>  
> And more I wonder why prompt was showd as "ij(CONNECTION1)>".....

The upgrade=true has to be set on the connection that boots the
database, the first connection to the database. In your example where
you use update=true, that booted the old database in soft upgrade mode.
Hard upgrade did not happen because the connection with the correct
upgrade=true was not the first so it was a normal connection to the
database.

A warning if the upgrade has no effect might be a good idea, either
no-upgrade required or upgrade on booted database not possible.

Dan.