public class Derby6131 extends BaseJDBCTestCase
DEFAULT_DB_DIR, DERBY_LOG, ERRORSTACKTRACEFILE| Constructor and Description |
|---|
Derby6131(java.lang.String name) |
| Modifier and Type | Method and Description |
|---|---|
void |
setUp() |
static junit.framework.Test |
suite() |
void |
testOrigUserRepro()
Test the original user report of this issue:
the issue can be reproduced
1. create table myTbl1 (name varchar(1000));
2. create table myTbl2 (name varchar(1000));
3. create view myView (name) as
select t1.name from myTbl1 t1
union all select t2.name from myTbl2 t2;
4. select name from myView where upper(name) in ('AA', 'BB');
#4 failed with
"org.apache.derby.impl.sql.compile.SimpleStringOperatorNode
incompatible with org.apache.derby.impl.sql.compile.ColumnReference:
java.lang.ClassCastException"
If the view is created as
"create myView (name) as select t1.name from myTbl1 t1",
the query worked fine.
|
void |
testOrigUserReproWithData()
Test the original DERBY-6131 queries with some data to make sure
results look right in addtion to not getting an exception.
|
assertCallError, assertCheckTable, assertCompileError, assertEquals, assertEquals, assertEquals, assertEquivalentDataType, assertErrorCode, assertGetIntError, assertNextError, assertPreparedStatementError, assertSQLExceptionEquals, assertSQLState, assertSQLState, assertStatementError, assertStatementError, assertStatementError, assertStatementError, assertStatementErrorUnordered, assertTableRowCount, assertUpdateCount, assertUpdateCount, assertWarning, checkAllConsistency, checkEstimatedRowCount, closeStatement, commit, createStatement, createStatement, createStatement, dropTable, dropTable, dropView, dropView, emptyStatementCache, getClientTransactionID, getConnection, getDatabaseProperty, getLastSQLException, initializeConnection, openConnection, openDefaultConnection, openDefaultConnection, openDefaultConnection, openUserConnection, prepareCall, prepareCall, prepareCall, prepareStatement, prepareStatement, prepareStatement, prepareStatement, prepareStatement, prepareStatement, rollback, runBare, runBareOverridable, runScript, runScript, runSQLCommands, setAutoCommit, tearDown, usingDB2Client, usingDerbyNetClient, usingEmbeddedalarm, assertDirectoryDeleted, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertExecJavaCmdAsExpected, assertLaunchedJUnitTestMethod, assertLaunchedJUnitTestMethod, assertSecurityManager, assertThrowableEquals, currentDirectory, execJavaCmd, execJavaCmd, fail, getClassVersionMajor, getEmmaJar, getFailureFolder, getFilesWith, getJavaExecutableName, getSystemProperty, getTestConfiguration, getTestResource, hasInterruptibleIO, isCVM, isIBMJVM, isJ9Platform, isJava5, isJava7, isJava8, isPhoneME, isPlatform, isSunJVM, isWindowsPlatform, openTestResource, println, printStackTrace, readProcessOutput, removeDirectory, removeDirectory, removeFiles, removeSystemProperty, runsWithEmma, runsWithJaCoCo, setSystemProperty, sleep, sleepAtLeastOneTick, traceitassertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, countTestCases, createResult, fail, fail, failNotEquals, failNotSame, failSame, format, getName, run, run, runTest, setName, toStringpublic static junit.framework.Test suite()
public void setUp()
throws java.sql.SQLException
setUp in class junit.framework.TestCasejava.sql.SQLExceptionpublic void testOrigUserRepro()
throws java.sql.SQLException
the issue can be reproduced 1. create table myTbl1 (name varchar(1000)); 2. create table myTbl2 (name varchar(1000)); 3. create view myView (name) as select t1.name from myTbl1 t1 union all select t2.name from myTbl2 t2; 4. select name from myView where upper(name) in ('AA', 'BB'); #4 failed with "org.apache.derby.impl.sql.compile.SimpleStringOperatorNode incompatible with org.apache.derby.impl.sql.compile.ColumnReference: java.lang.ClassCastException" If the view is created as "create myView (name) as select t1.name from myTbl1 t1", the query worked fine.
java.sql.SQLExceptionpublic void testOrigUserReproWithData()
throws java.sql.SQLException
java.sql.SQLExceptionApache Derby V10.10 Internals - Copyright © 2004,2014 The Apache Software Foundation. All Rights Reserved.