[ http://issues.apache.org/jira/browse/DERBY-258?page=all ]
Daniel John Debrunner resolved DERBY-258:
-----------------------------------------
Fix Version: 10.1.0.0
Resolution: Fixed
Committed revision 190508. Included updating the client and JCC master files
for procedure.java test
> Incorrect method resolution with explicit method signature
> ----------------------------------------------------------
>
> Key: DERBY-258
> URL: http://issues.apache.org/jira/browse/DERBY-258
> Project: Derby
> Type: Bug
> Components: SQL
> Versions: 10.1.0.0
> Reporter: Daniel John Debrunner
> Assignee: Daniel John Debrunner
> Fix For: 10.1.0.0
> Attachments: derby258_20050607.txt
>
> If an explicit method signature has Java type that does not match the correct
> SQL to Java mapping as defined by JDBC, then method resolution seems to try
> and pick the incorrect method.
> With this example an attempt is made to force an INT procedure parameter to
> resolve to a java.lang.String, which is not supported. However the engine
> trys to resolve to a method with an Integr parameter.
> ij> CREATE PROCEDURE SIGNATURE_BUG_1(IN A INT)
> LANGUAGE JAVA PARAMETER STYLE JAVA
> EXTERNAL NAME 'java.lang.System.load(java.lang.String)';
> 0 rows inserted/updated/deleted
> ij> CALL SIGNATURE_BUG_1(4);
> ERROR 38000: The exception 'java.lang.NoSuchMethodError:
> java.lang.System.load(Ljava/lang/Integer;)V' was thrown while evaluating an
> expression.
> ERROR XJ001: Java exception: 'java.lang.System.load(Ljava/lang/Integer;)V:
> java.lang.NoSuchMethodError'.
> I believe that the resolution should fail with an illegal conversion error if
> the supplied Java type is not a match for the SQL type according to JDBC, in
> this case int or java.lang.Integer.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira