db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel John Debrunner (JIRA)" <derby-...@db.apache.org>
Subject [jira] Created: (DERBY-258) Incorrect method resolution with explicit method signature
Date Tue, 03 May 2005 21:59:05 GMT
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


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


Mime
View raw message