db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Matrigali <mikem_...@sbcglobal.net>
Subject Re: [jira] Commented: (DERBY-1462) Test harness incorrectly catches db.lck WARNINGS generated during STORE tests and lists the tests as failed in *_fail.txt.
Date Thu, 13 Jul 2006 22:13:03 GMT

Myrna van Lunteren (JIRA) wrote:
>     [ http://issues.apache.org/jira/browse/DERBY-1462?page=comments#action_12420945 ]

> Myrna van Lunteren commented on DERBY-1462:
> -------------------------------------------
> I do not believe this is a test harness issue.
> If I run these steps with another jvm, these warnings do not appear.
I agree, I think this a problem with these particular tests on pre 1.4 
jvms, on non windows platforms - their output is different - it would 
not be right to somehow get
the harness to supress every connect warning printed.  Fixing with test 
specific seds is fine.

I checked all the tests below except for the stress ones, they all are 
setup to run on an existing db and are coded to crash with no cleanup so
that subsequent test will run recovery.  A side effect of that crash on
pre-1.4 jvms on non windows platforms is that it leaves a lock file 
around which derby can't tell
if it is an active lock file and thus the reconnect correctly prints a
warning in those cases.

The stress ones are a little puzzling, I didn't think we reconnected to 
the same db - I have not really looked at how we run those tests in
the network server framework.  Is it likely we are trying to run those
tests on an existing db?

> I experimented, and I can make the warning appear with this ibm 1.3.1 SR10 with only
ij, but not with another jvm by doing the following:
> - start ij:
>    java org.apache.derby.tools.ij
>    ij>connect 'jdbc:derby:tstdb;create=true';
>    ij> create table t1 (c1 int);
>    ij> disconnect;
>    ij> exit;
> - ls tstdb and observe there is no db.lck file
> -  start ij again, select from t, and ctrl-c out:
>    java org.apache.derby.tools.ij
>    ij> connect 'jdbc:derby:tstdb';
>    ij> select * from t1;
>    CTRL-C
> - ls tstdb and observe there is a db.lck file now
> - start ij again, and connect again, and see that only with ibm 1.3.1 do you see the
> I have no jdk131 installed on the machine I was doing this on. Maybe someone else can
verify this behavior for that.
> I worked on making _sed.properties files for all the affected tests (for 10.2, we have
one extra tests failing - st_derby715.java) but this does not work for the stress tests, and
possibly this is not the right thing to do in the first place.  
>>Test harness incorrectly catches db.lck WARNINGS generated during STORE tests and
lists the tests as failed in *_fail.txt.
>>         Key: DERBY-1462
>>         URL: http://issues.apache.org/jira/browse/DERBY-1462
>>     Project: Derby
>>        Type: Test
>>  Components: Test
>>    Versions:,,,,,,
>> Environment: IBM 1.3.1 JRE for LINUX (and possibly other JRE 1.3.1 environments)
>>    Reporter: Stan Bradbury
>>    Assignee: Myrna van Lunteren
>>    Priority: Minor
>>The following store tests from derbyall do not shutdown cleanly so leave the db.lck
file on disk.  This is OK! It is done by design to test recovery.  THE PROBLEM, when run on
Linux using IBM JRE 1.3.1 sp 10 the test harness 'sees' the warnings and lists the tests as
having failed.  The harness should ignore this warnings as the tests proceed and complete
>>Tests INCORRECLTY reported as failed:
>> erbyall/storeall/storeall.fail:store/LogChecksumRecovery.java
>> erbyall/storeall/storeall.fail:store/MaxLogNumberRecovery.java
>>Example Error message:
>>WARNING: Derby (instance xxxxFILTERED-UUIDxxxx) is attempting to boot the database
csf:/local1/131TST/Store1/storeall/storerecovery/storerecovery/wombat even though Derby (instance
xxxxFILTERED-UUIDxxxx) may still be active.  Only one instance of Derby should boot a database
at a time. Severe and non-recoverable corruption can result and may have already occurred.

View raw message