db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dag H. Wanvik (JIRA)" <j...@apache.org>
Subject [jira] Created: (DERBY-4413) INSERT from SELECT DISTINCT gives assertFailure (sane), or NPE (insane) in presence of generated columns
Date Mon, 19 Oct 2009 12:27:31 GMT
INSERT from SELECT DISTINCT gives assertFailure (sane), or  NPE (insane) in presence of generated
columns
---------------------------------------------------------------------------------------------------------

                 Key: DERBY-4413
                 URL: https://issues.apache.org/jira/browse/DERBY-4413
             Project: Derby
          Issue Type: Bug
          Components: SQL
    Affects Versions: 10.5.3.0
            Reporter: Dag H. Wanvik


When a generated column is present in a table, an INSERT DISTINCT fail:
Repro:

create table t(i integer, 
               j integer not null generated always as (i*66));
insert into t(i) values 1,2;
insert into t(i) select distinct i from t;

In an insane build we see this assertFailure:

ij version 10.5
ij> connect 'jdbc:derby:wombat2;create=true';
ij> create table t(i integer, 
               j integer not null generated always as (i*66));
0 rows inserted/updated/deleted
ij> insert into t(i) values 1,2;
2 rows inserted/updated/deleted
ij> insert into t(i) select distinct i from t;
ERROR XJ001: Java exception: 'ASSERT FAILED col[1]  is null: org.apache.derby.shared.common.sanity.AssertFailure'.
java.sql.SQLException: Java exception: 'ASSERT FAILED col[1]  is null: org.apache.derby.shared.common.sanity.AssertFailure'.
	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(SQLExceptionFactory40.java:95)
	at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Util.java:87)
	at org.apache.derby.impl.jdbc.Util.javaException(Util.java:244)
	at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(TransactionResourceImpl.java:403)
	at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(TransactionResourceImpl.java:346)
	at org.apache.derby.impl.jdbc.EmbedConnection.handleException(EmbedConnection.java:2201)
	at org.apache.derby.impl.jdbc.ConnectionChild.handleException(ConnectionChild.java:81)
	at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java:1323)
	at org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:625)
	at org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:555)
	at org.apache.derby.impl.tools.ij.ij.executeImmediate(ij.java:329)
	at org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:505)
	at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(utilMain.java:347)
	at org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:245)
	at org.apache.derby.impl.tools.ij.Main.go(Main.java:217)
	at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:184)
	at org.apache.derby.impl.tools.ij.Main.main(Main.java:75)
	at org.apache.derby.tools.ij.main(ij.java:59)
	at org.apache.derby.iapi.tools.run.main(run.java:53)
Caused by: java.sql.SQLException: Java exception: 'ASSERT FAILED col[1]  is null: org.apache.derby.shared.common.sanity.AssertFailure'.
	at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:45)
	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(SQLExceptionFactory40.java:119)
	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(SQLExceptionFactory40.java:70)
	... 18 more
Caused by: org.apache.derby.shared.common.sanity.AssertFailure: ASSERT FAILED col[1]  is null
	at org.apache.derby.shared.common.sanity.SanityManager.THROWASSERT(SanityManager.java:162)
	at org.apache.derby.shared.common.sanity.SanityManager.THROWASSERT(SanityManager.java:147)
	at org.apache.derby.impl.store.access.sort.MergeSort.checkColumnTypes(MergeSort.java:458)
	at org.apache.derby.impl.store.access.sort.MergeInserter.insert(MergeInserter.java:98)
	at org.apache.derby.impl.sql.execute.SortResultSet.loadSorter(SortResultSet.java:317)
	at org.apache.derby.impl.sql.execute.SortResultSet.openCore(SortResultSet.java:268)
	at org.apache.derby.impl.sql.execute.NormalizeResultSet.openCore(NormalizeResultSet.java:139)
	at org.apache.derby.impl.sql.execute.InsertResultSet.open(InsertResultSet.java:415)
	at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(GenericPreparedStatement.java:416)
	at org.apache.derby.impl.sql.GenericPreparedStatement.execute(GenericPreparedStatement.java:297)
	at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java:1235)
	... 11 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message