Return-Path: Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: (qmail 96492 invoked from network); 5 Oct 2009 14:25:58 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 5 Oct 2009 14:25:58 -0000 Received: (qmail 95471 invoked by uid 500); 5 Oct 2009 14:25:57 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 95412 invoked by uid 500); 5 Oct 2009 14:25:57 -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 95403 invoked by uid 99); 5 Oct 2009 14:25:57 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 05 Oct 2009 14:25:57 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 05 Oct 2009 14:25:53 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 59D1A234C03A for ; Mon, 5 Oct 2009 07:25:31 -0700 (PDT) Message-ID: <1961411107.1254752731351.JavaMail.jira@brutus> Date: Mon, 5 Oct 2009 07:25:31 -0700 (PDT) From: "Rick Hillegas (JIRA)" To: derby-dev@db.apache.org Subject: [jira] Commented: (DERBY-4393) lang.SequenceTest fails w/ "Sequence 'ALPHA_SEQ' already exists." on phoneME/cvm In-Reply-To: <1423709206.1254396863814.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/DERBY-4393?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12762185#action_12762185 ] Rick Hillegas commented on DERBY-4393: -------------------------------------- This is a familiar problem on the phoneME platform, where the tests run in the opposite order that they run on other VMs. When I write test cases, I tackle this problem by putting some unique identifier in the name of the test case and then incorporating that identifier into the names of all the schema objects referenced by the test case. This is a simple way to guarantee that the object names won't collide if the tests run in a different order. So for instance, the first test case would look like this: public void test_01_CreateSequence() throws SQLException { Statement s = createStatement(); s.executeUpdate("CREATE SEQUENCE mySeq_01"); } An alternative solution would be to put some logic in the tearDown() method to destroy the schemas created by the test cases. I don't recommend putting cleanup logic in the test cases themselves. That approach is brittle because a test case can fail before it gets to its cleanup logic. The previous two approaches don't have this problem. > lang.SequenceTest fails w/ "Sequence 'ALPHA_SEQ' already exists." on phoneME/cvm > -------------------------------------------------------------------------------- > > Key: DERBY-4393 > URL: https://issues.apache.org/jira/browse/DERBY-4393 > Project: Derby > Issue Type: Bug > Components: Test > Affects Versions: 10.6.0.0 > Environment: OS: > Linux .... 32bits > Linux 2.6.22-14-generic #1 SMP Sun Oct 14 23:05:12 GMT 2007 GNU/Linux > JVM: > Product: phoneME Advanced (phoneme_advanced_mr2-b116) > Profile: Foundation Profile Specification 1.1 > JVM: CVM phoneme_advanced_mr2-b116 (interpreter loop) > Reporter: Ole Solberg > Assignee: Ole Solberg > Attachments: DERBY-4393_1.diff.txt, DERBY-4393_2.diff.txt, DERBY-4393_3.diff.txt > > > Seen since 2009-09-03. Possibly related to DERBY-4284 / svn 811009? > See e.g. http://dbtg.foundry.sun.com/derby/test/Daily/javaME/testing/testlog/ubuntu/820325-suitesAll_diff.txt > 20) testCreateWithSchemaDropWithNoSchema(org.apache.derbyTesting.functionTests.tests.lang.SequenceTest)java.sql.SQLException: Sequence 'ALPHA_SEQ' already exists. > at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.executeUpdate(Unknown Source) > at org.apache.derbyTesting.functionTests.tests.lang.SequenceTest.testCreateWithSchemaDropWithNoSchema(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestCase.runBare(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at sun.misc.CVM.runMain(Unknown Source) > Caused by: ERROR X0Y68: Sequence 'ALPHA_SEQ' already exists. > at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) > at org.apache.derby.impl.sql.execute.CreateSequenceConstantAction.executeConstantAction(Unknown Source) > at org.apache.derby.impl.sql.execute.MiscResultSet.open(Unknown Source) > at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(Unknown Source) > at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source) > ... 55 more > 21) testCreateWithSchemaSpecifiedCreateTrue(org.apache.derbyTesting.functionTests.tests.lang.SequenceTest)java.sql.SQLException: Sequence 'ALPHA_SEQ' already exists. > at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.executeUpdate(Unknown Source) > at org.apache.derbyTesting.functionTests.tests.lang.SequenceTest.testCreateWithSchemaSpecifiedCreateTrue(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestCase.runBare(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at sun.misc.CVM.runMain(Unknown Source) > Caused by: ERROR X0Y68: Sequence 'ALPHA_SEQ' already exists. > at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) > at org.apache.derby.impl.sql.execute.CreateSequenceConstantAction.executeConstantAction(Unknown Source) > at org.apache.derby.impl.sql.execute.MiscResultSet.open(Unknown Source) > at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(Unknown Source) > at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source) > ... 55 more > 22) testCreateWithSchemaSpecified(org.apache.derbyTesting.functionTests.tests.lang.SequenceTest)java.sql.SQLException: Sequence 'ALPHA_SEQ' already exists. > at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.executeUpdate(Unknown Source) > at org.apache.derbyTesting.functionTests.tests.lang.SequenceTest.testCreateWithSchemaSpecified(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestCase.runBare(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at sun.misc.CVM.runMain(Unknown Source) > Caused by: ERROR X0Y68: Sequence 'ALPHA_SEQ' already exists. > at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) > at org.apache.derby.impl.sql.execute.CreateSequenceConstantAction.executeConstantAction(Unknown Source) > at org.apache.derby.impl.sql.execute.MiscResultSet.open(Unknown Source) > at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(Unknown Source) > at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source) > ... 55 more > 23) testImplicitSchemaCreation(org.apache.derbyTesting.functionTests.tests.lang.SequenceTest)java.sql.SQLException: Sequence 'ALPHA_SEQ' already exists. > at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.executeUpdate(Unknown Source) > at org.apache.derbyTesting.functionTests.tests.lang.SequenceTest.testImplicitSchemaCreation(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestCase.runBare(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at sun.misc.CVM.runMain(Unknown Source) > Caused by: ERROR X0Y68: Sequence 'ALPHA_SEQ' already exists. > at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) > at org.apache.derby.impl.sql.execute.CreateSequenceConstantAction.executeConstantAction(Unknown Source) > at org.apache.derby.impl.sql.execute.MiscResultSet.open(Unknown Source) > at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(Unknown Source) > at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source) > ... 55 more > 24) testDropSequence(org.apache.derbyTesting.functionTests.tests.lang.SequenceTest)java.sql.SQLException: Sequence 'MYSEQ1' already exists. > at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source) > at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown Source) > at org.apache.derby.impl.jdbc.EmbedStatement.executeUpdate(Unknown Source) > at org.apache.derbyTesting.functionTests.tests.lang.SequenceTest.testDropSequence(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestCase.runBare(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at org.apache.derbyTesting.junit.BaseTestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at junit.extensions.TestDecorator.basicRun(Unknown Source) > at junit.extensions.TestSetup$1.protect(Unknown Source) > at junit.extensions.TestSetup.run(Unknown Source) > at sun.misc.CVM.runMain(Unknown Source) > Caused by: ERROR X0Y68: Sequence 'MYSEQ1' already exists. > at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) > at org.apache.derby.impl.sql.execute.CreateSequenceConstantAction.executeConstantAction(Unknown Source) > at org.apache.derby.impl.sql.execute.MiscResultSet.open(Unknown Source) > at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(Unknown Source) > at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source) > ... 55 more -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.