I was convinced I had done both....:)
Thx...

Satheesh Bandaram wrote:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
I would appreciate if you can post this patch as as attachment... Extracting in-lined patches doesn't work well ...


Satheesh

myrnap wrote:

> Now that there are tests, and svn 57487 was committed for jira 45, 2 master files need to be updated.
>
> As of now, updates to tests and masters will go with the patch that changes functionality, but in this case there was a timing problem...
>
> Index: java/testing/org/apache/derbyTesting/functionTests/master/LOB.out
> ===================================================================
> --- java/testing/org/apache/derbyTesting/functionTests/master/LOB.out (revision 57534)
> +++ java/testing/org/apache/derbyTesting/functionTests/master/LOB.out (working copy)
> @@ -239,7 +239,13 @@
> ij> select * from b where b like cast('0102%' as blob(10));
> ERROR 42846: Cannot convert types 'CHAR' to 'BLOB'.
> ij> select * from c where c like cast('12%' as clob(10));
> -ERROR 42884: No authorized routine named 'LIKE' of type 'FUNCTION' having compatible arguments was found.
> +C +-----
> +1234
> +12345
> +1234
> +12345
> +1234&
> ij> select * from n where n like cast('12%' as nclob(10));
> ERROR 0A000: Feature not implemented: NCLOB.
> ij> -- cleanup
> Index: java/testing/org/apache/derbyTesting/functionTests/master/dynamicLikeOptimization.out
> ===================================================================
> --- java/testing/org/apache/derbyTesting/functionTests/master/dynamicLikeOptimization.out (revision 57534)
> +++ java/testing/org/apache/derbyTesting/functionTests/master/dynamicLikeOptimization.out (working copy)
> @@ -86,7 +86,7 @@
> 1 ij> -- match
> select 1 from t1 where 'asdf' like 'a%' escape cast(null as char);
> -ERROR 42884: No authorized routine named 'LIKE' of type 'FUNCTION' having compatible arguments was found.
> +ERROR 22501: An ESCAPE clause of NULL returns undefined results and is not allowed.
> ij> -- error NULL escape
> prepare ll2 as 'select 1 from t1 where ''%foobar'' like ? escape ?';
> ij> execute ll2 using 'values (''Z%foobar'', ''Z'') ';
>
>
>-------------------------
>
>Index: java/engine/org/apache/derby/impl/sql/compile/LikeEscapeOperatorNode.java
>===================================================================
>--- java/engine/org/apache/derby/impl/sql/compile/LikeEscapeOperatorNode.java (revision 57450)
>+++ java/engine/org/apache/derby/impl/sql/compile/LikeEscapeOperatorNode.java (working copy)
>@@ -157,7 +157,8 @@
> throw StandardException.newException(SQLState.LANG_DB2_LIKE_SYNTAX_ERROR);
>
> // pattern must be a string or a parameter
>- if (!(leftOperand instanceof CharConstantNode) && !(leftOperand.isParameterNode()))
>+
>+ if (!(leftOperand.isParameterNode()) && !(leftOperand.getTypeId().isStringTypeId()))
> throw StandardException.newException(SQLState.LANG_DB2_FUNCTION_INCOMPATIBLE,
> "LIKE", "FUNCTION");
>
>@@ -169,7 +170,9 @@
> }
>
> // escape must be a string or a parameter
>- if (rightOperand != null && !(rightOperand instanceof CharConstantNode) && !(rightOperand.isParameterNode()))
>+ if ((rightOperand != null) &&
>+ !(rightOperand.isParameterNode()) &&
>+ !(rightOperand.getTypeId().isStringTypeId()))
> {
> throw StandardException.newException(SQLState.LANG_DB2_FUNCTION_INCOMPATIBLE,
> "LIKE", "FUNCTION");
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.5 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFBlWovENVNIY6DZ7ERAlRAAJ90z0sOpC7K8gNYSO5aW6vuE11J+gCghKqq
6zY9IGLPR+yNK7Uss37Pqv4=
=wfxh
-----END PGP SIGNATURE-----



Index: java/testing/org/apache/derbyTesting/functionTests/master/LOB.out
===================================================================
--- java/testing/org/apache/derbyTesting/functionTests/master/LOB.out   
(revision 57534)
+++ java/testing/org/apache/derbyTesting/functionTests/master/LOB.out   
(working copy)
@@ -239,7 +239,13 @@
 ij> select * from b where b like cast('0102%' as blob(10));
 ERROR 42846: Cannot convert types 'CHAR' to 'BLOB'.
 ij> select * from c where c like cast('12%' as clob(10));
-ERROR 42884: No authorized routine named 'LIKE' of type 'FUNCTION' having 
compatible arguments was found.
+C    
+-----
+1234 
+12345
+1234 
+12345
+1234&
 ij> select * from n where n like cast('12%' as nclob(10));
 ERROR 0A000: Feature not implemented: NCLOB.
 ij> -- cleanup
Index: 
java/testing/org/apache/derbyTesting/functionTests/master/dynamicLikeOptimization.out
===================================================================
--- 
java/testing/org/apache/derbyTesting/functionTests/master/dynamicLikeOptimization.out
       (revision 57534)
+++ 
java/testing/org/apache/derbyTesting/functionTests/master/dynamicLikeOptimization.out
       (working copy)
@@ -86,7 +86,7 @@
 1          
 ij> -- match
 select 1 from t1  where 'asdf' like 'a%' escape cast(null as char);
-ERROR 42884: No authorized routine named 'LIKE' of type 'FUNCTION' having 
compatible arguments was found.
+ERROR 22501: An ESCAPE clause of NULL returns undefined results and is not 
allowed.
 ij> -- error NULL escape
 prepare ll2 as 'select 1 from t1 where ''%foobar'' like ? escape ?';
 ij> execute ll2 using 'values (''Z%foobar'', ''Z'') ';

Reply via email to