db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kristian Waagan (JIRA)" <j...@apache.org>
Subject [jira] [Created] (DERBY-5290) BaseTestCase.runBare fails to copy the database because it is in flux
Date Tue, 21 Jun 2011 13:35:47 GMT
BaseTestCase.runBare fails to copy the database because it is in flux
---------------------------------------------------------------------

                 Key: DERBY-5290
                 URL: https://issues.apache.org/jira/browse/DERBY-5290
             Project: Derby
          Issue Type: Bug
          Components: Test
    Affects Versions: 10.9.0.0
            Reporter: Kristian Waagan
            Priority: Minor


If a JUnit assertion is raised, and the test causes the database used to be in flux, the code
to copy the database to the fail-directory may fail.
A reason for the database to change on disk may be that a checkpoint has been triggered. I've
seen cases where the copy failed when copying log files and stub data files.

Potential fix components:
 o wait to let the database stabilize
 o delete copy on disk if the copy-operation fails
 o delete copy on disk and retry (after a slight pause) if the copy-operation fails
 o ignore copy-errors, but write a warning-file to disk?

Example stack trace from a JUnit run:
..F...F.java.io.FileNotFoundException: system/wombat/seg0/d4d0.dat (No such file or directory)
	at java.io.FileInputStream.open(Native Method)
	at java.io.FileInputStream.<init>(FileInputStream.java:106)
	at org.apache.derbyTesting.functionTests.util.PrivilegedFileOpsForTests.copySingleFile(PrivilegedFileOpsForTests.java:254)
	at org.apache.derbyTesting.functionTests.util.PrivilegedFileOpsForTests.recursiveCopy(PrivilegedFileOpsForTests.java:226)
	at org.apache.derbyTesting.functionTests.util.PrivilegedFileOpsForTests.access$000(PrivilegedFileOpsForTests.java:48)
	at org.apache.derbyTesting.functionTests.util.PrivilegedFileOpsForTests$6.run(PrivilegedFileOpsForTests.java:185)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.apache.derbyTesting.functionTests.util.PrivilegedFileOpsForTests.copy(PrivilegedFileOpsForTests.java:183)
	at org.apache.derbyTesting.functionTests.util.PrivilegedFileOpsForTests.recursiveCopy(PrivilegedFileOpsForTests.java:224)
	at org.apache.derbyTesting.functionTests.util.PrivilegedFileOpsForTests.access$000(PrivilegedFileOpsForTests.java:48)
	at org.apache.derbyTesting.functionTests.util.PrivilegedFileOpsForTests$6.run(PrivilegedFileOpsForTests.java:185)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.apache.derbyTesting.functionTests.util.PrivilegedFileOpsForTests.copy(PrivilegedFileOpsForTests.java:183)
	at org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:136)
	at junit.framework.TestResult$1.protect(TestResult.java:106)
	at junit.framework.TestResult.runProtected(TestResult.java:124)
	at junit.framework.TestResult.run(TestResult.java:109)
	at junit.framework.TestCase.run(TestCase.java:120)
	at junit.framework.TestSuite.runTest(TestSuite.java:230)
	at junit.framework.TestSuite.run(TestSuite.java:225)
	at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
	at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
	at junit.framework.TestResult.runProtected(TestResult.java:124)
	at junit.extensions.TestSetup.run(TestSetup.java:25)
	at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
	at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
	at junit.framework.TestResult.runProtected(TestResult.java:124)
	at junit.extensions.TestSetup.run(TestSetup.java:25)
	at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:57)
	at junit.framework.TestSuite.runTest(TestSuite.java:230)
	at junit.framework.TestSuite.run(TestSuite.java:225)
	at junit.textui.TestRunner.doRun(TestRunner.java:121)
	at junit.textui.TestRunner.start(TestRunner.java:185)
	at junit.textui.TestRunner.main(TestRunner.java:143)


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message