You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Rick Hillegas (JIRA)" <ji...@apache.org> on 2014/03/15 16:56:42 UTC
[jira] [Created] (DERBY-6512) Cannot use java.util.Arrays.toString(
byte[] b ) as a function.
Rick Hillegas created DERBY-6512:
------------------------------------
Summary: Cannot use java.util.Arrays.toString( byte[] b ) as a function.
Key: DERBY-6512
URL: https://issues.apache.org/jira/browse/DERBY-6512
Project: Derby
Issue Type: Bug
Components: SQL
Affects Versions: 10.11.0.0
Reporter: Rick Hillegas
Priority: Minor
Trying to use this method as a function raises the following error, which seems to be a defect in Derby's method resolution:
ERROR 42X73: Method resolution for signature java.util.Arrays.toString([B) was ambiguous. (No single maximally specific method.)
I can create a separate static method in another class, which just forwards to java.util.Arrays.toString(). Registering and invoking that method as a toString() function works.
The following script shows this problem:
connect 'jdbc:derby:memory:db;create=true';
create function mb( cells int... ) returns char( 5 ) for bit data
language java parameter style derby deterministic no sql
external name 'org.apache.derbyTesting.functionTests.tests.lang.MergeStatementTest.makeByteArray';
create function toString( byteArray char( 5 ) for bit data ) returns varchar( 20 )
language java parameter style java deterministic no sql
external name 'java.util.Arrays.toString';
values( toString( mb( 1, 2, 3, 4, 5 ) ) );
--
This message was sent by Atlassian JIRA
(v6.2#6252)