db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Siddharth Srivastava (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (DERBY-4249) Create a simple store recovery test in JUnit
Date Sat, 16 Jul 2011 19:17:59 GMT

     [ https://issues.apache.org/jira/browse/DERBY-4249?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Siddharth Srivastava updated DERBY-4249:
----------------------------------------

    Attachment: d4249_1.diff

I trying to fork the JVM and insert rows into the database. But the test fails:
There was 1 failure:
------------------------------------------------------------------------------------
1) testBasicRecovery(org.apache.derbyTesting.functionTests.tests.store.RecoveryT
est)junit.framework.AssertionFailedError: Unexpected row count: expected:<1> but
 was:<0>
        at org.apache.derbyTesting.junit.JDBC.assertFullResultSetMinion(JDBC.jav
a:1020)
        at org.apache.derbyTesting.junit.JDBC.assertFullResultSet(JDBC.java:935)

        at org.apache.derbyTesting.junit.JDBC.assertFullResultSet(JDBC.java:892)

        at org.apache.derbyTesting.junit.JDBC.assertFullResultSet(JDBC.java:850)

        at org.apache.derbyTesting.functionTests.tests.store.RecoveryTest.assert
Database(RecoveryTest.java:78)
        at org.apache.derbyTesting.functionTests.tests.store.RecoveryTest.testBa
sicRecovery(RecoveryTest.java:58)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:
113)
        at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
        at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
        at junit.extensions.TestSetup.run(TestSetup.java:25)

FAILURES!!!
Tests run: 1,  Failures: 1,  Errors: 0
-------------------------------------------------------------------------------------

It seems that launchRecoveryInsert() isn't executed at all.
Also if I check exitValue(), the assertLaunchedJUnitFixture generates a IllegalThreadStateException.

What am I doing wrong ?

Note: Please ignore some commented out and ugly looking code(and functions) in the diff


> Create a simple store recovery test in JUnit
> --------------------------------------------
>
>                 Key: DERBY-4249
>                 URL: https://issues.apache.org/jira/browse/DERBY-4249
>             Project: Derby
>          Issue Type: Improvement
>          Components: Test
>    Affects Versions: 10.6.1.0
>            Reporter: Kathey Marsden
>            Assignee: Siddharth Srivastava
>            Priority: Minor
>         Attachments: d4249.diff, d4249_1.diff
>
>
> It would be good to be able to start converting the store  recovery tests  or at least
be able to write new recovery tests in JUnit.   We could start by writing a simple recovery
test just to establish the framework.  The test should.
> -  Connect, create a table, commit and shutdown the database.
> -  fork a jvm, add one row, commit, add another row, exit  the jvm.
> -  Reconnect with the first jvm and verify that the first row is there and the second
is not.
> I guess the main thing to decide is how to spawn the second jvm and check results.  
 I tend to think the second jvm should actually execute another JUnit test, verify the exit
code (assuming a failed test has a non-zero exit code) and then put the output in the fail
assertion if it fails so it shows up in the report at the end of the Suite execution.   I
think we could create a test runner that takes a class and a specific test to run instead
of the whole suite, so we could keep our methods consolidated in a single class for the test,
but all pure conjecture at this point.  I'll have to give it a try, but wanted to first see
if folks thought this was a reasonable approach.
>  

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

        

Mime
View raw message