db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mamta A. Satoor (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DERBY-6185) Query against view with "where name LIKE 'Col1' ESCAPE '\' " failed
Date Wed, 17 Apr 2013 15:51:18 GMT

    [ https://issues.apache.org/jira/browse/DERBY-6185?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13634154#comment-13634154
] 

Mamta A. Satoor commented on DERBY-6185:
----------------------------------------

Hi Knut, I tried the exact same change last night and ran derbyall and junit suite with it
and the existing regression tests passed with no problems. Thought I would share the results
of the test runs so you don't have to re-run them in case you haven't yet. 

Also, I searched the code for new node creation for BinaryRelationalOperatorNode and found
that there is at least one another place where we clone it but do not copy the rewrite flag.
That code is in Predicate.getPredScopedForResultSet():979
                
> Query against view  with "where name LIKE 'Col1' ESCAPE '\' " failed
> --------------------------------------------------------------------
>
>                 Key: DERBY-6185
>                 URL: https://issues.apache.org/jira/browse/DERBY-6185
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.1.3.3, 10.5.3.2, 10.8.2.2, 10.8.3.0
>         Environment: windows 7
>            Reporter: Rong Qu
>            Assignee: Knut Anders Hatlen
>         Attachments: set-for-rewrite.diff
>
>
> The error can be reproduced,
> 1) create table mytbl1 (name clob(10K));
> 2) create table mytbl2 (name clob(10K));
> 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 name LIKE 'Col1' ESCAPE '\';
> "4)" failed with error message "
> ERROR 42818: Comparisons between 'CLOB (UCS_BASIC)' and 'CHAR (UCS_BASIC)' are not supported.
Types must be comparable. String types must also have matching collation. If collation does
not match, a possible solution is to cast operands to force them to the default collation
(e.g. SELECT tablename FROM sys.systables WHERE CAST(tablename AS VARCHAR(128)) = 'T1')
> 	at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
> 	at org.apache.derby.impl.sql.compile.BinaryComparisonOperatorNode.bindComparisonOperator(Unknown
Source)
> 	at org.apache.derby.impl.sql.compile.PredicateList.pushExpressionsIntoSelect(Unknown
Source)
> 	at org.apache.derby.impl.sql.compile.UnionNode.pushExpressions(Unknown Source)
> 	at org.apache.derby.impl.sql.compile.UnionNode.pushExpressions(Unknown Source)
> 	at org.apache.derby.impl.sql.compile.ProjectRestrictNode.pushExpressions(Unknown Source)
> 	at org.apache.derby.impl.sql.compile.FromList.pushPredicates(Unknown Source)
> 	at org.apache.derby.impl.sql.compile.SelectNode.preprocess(Unknown Source)
> 	at org.apache.derby.impl.sql.compile.DMLStatementNode.optimizeStatement(Unknown Source)
> 	at org.apache.derby.impl.sql.compile.CursorNode.optimizeStatement(Unknown Source)
> 	at org.apache.derby.impl.sql.GenericStatement.prepMinion(Unknown Source)
> 	at org.apache.derby.impl.sql.GenericStatement.prepare(Unknown Source)
> 	at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(Unknown
Source)
> 	... 19 more

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message