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 "Mike Matrigali (JIRA)" <ji...@apache.org> on 2014/12/11 17:27:13 UTC

[jira] [Updated] (DERBY-6774) org.apache.derbyTesting.functionTests.tests.lang.AlterTableTest.testAddIdentityColumn failed with assert in nightlys

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

Mike Matrigali updated DERBY-6774:
----------------------------------
    Attachment: derby-6774_diff.txt

patch for this issue.  It reenables the tests that were failing on some platforms, and adds tests that were failing consistently in my environment (laptop, windows 7, ibm17).  The fix was to insure that background threads waited on table intent lock before going to the conglomerate cache. 

Before doing this an inconsistent conglomerate would sometimes be faulted into the cache between time when alter table abort was invalidating the cache and abort had finished backing out the alter table.  Then a subsequent alter table would fail as it correctly passed in that there was 1 existing column, but the conglomerate cache thought there were 2 columns.

> org.apache.derbyTesting.functionTests.tests.lang.AlterTableTest.testAddIdentityColumn  failed with assert in nightlys
> ---------------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-6774
>                 URL: https://issues.apache.org/jira/browse/DERBY-6774
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.11.1.3
>            Reporter: Mike Matrigali
>            Assignee: Mike Matrigali
>         Attachments: derby-6774_diff.txt
>
>
> intermittent error in sane test runs in some nightly runs.
> java.sql.SQLException: DERBY SQL error: ERRORCODE: 0, SQLSTATE: XJ001, SQLERRMC: org.apache.derby.shared.common.sanity.AssertFailureASSERT FAILED Expected (column_id == format_ids.length)column_id = 1format_ids.length = 2format_ids = [I@2abb6423XJ001.U
> 	at org.apache.derby.client.am.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:112)
> 	at org.apache.derby.client.am.SqlException.getSQLException(SqlException.java:321)
> 	at org.apache.derby.client.am.ClientStatement.execute(ClientStatement.java:990)
> 	at org.apache.derbyTesting.functionTests.tests.lang.AlterTableTest.testAddIdentityColumn(AlterTableTest.java:377)
> 	at org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:120)
> 	at org.apache.derbyTesting.junit.BaseJDBCTestCase.runBareOverridable(BaseJDBCTestCase.java:443)
> 	at org.apache.derbyTesting.junit.BaseJDBCTestCase.runBare(BaseJDBCTestCase.java:460)
> 	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)
> 	at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:58)
> 	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)
> 	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)
> 	at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:58)
> 	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)
> 	at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:58)
> 	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)
> 	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)
> Caused by: ERROR XJ001: DERBY SQL error: ERRORCODE: 0, SQLSTATE: XJ001, SQLERRMC: org.apache.derby.shared.common.sanity.AssertFailureASSERT FAILED Expected (column_id == format_ids.length)column_id = 1format_ids.length = 2format_ids = [I@2abb6423XJ001.U
> 	at org.apache.derby.client.am.ClientStatement.completeSqlca(ClientStatement.java:2109)
> 	at org.apache.derby.client.am.ClientStatement.completeExecuteImmediate(ClientStatement.java:1676)
> 	at org.apache.derby.client.net.NetStatementReply.parseEXCSQLIMMreply(NetStatementReply.java:209)
> 	at org.apache.derby.client.net.NetStatementReply.readExecuteImmediate(NetStatementReply.java:60)
> 	at org.apache.derby.client.net.StatementReply.readExecuteImmediate(StatementReply.java:47)
> 	at org.apache.derby.client.net.NetStatement.readExecuteImmediate_(NetStatement.java:142)
> 	at org.apache.derby.client.am.ClientStatement.readExecuteImmediate(ClientStatement.java:1672)
> 	at org.apache.derby.client.am.ClientStatement.flowExecute(ClientStatement.java:2401)
> 	at org.apache.derby.client.am.ClientStatement.executeX(ClientStatement.java:995)
> 	at org.apache.derby.client.am.ClientStatement.execute(ClientStatement.java:981)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)