db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bryan Pendleton (JIRA)" <j...@apache.org>
Subject [jira] Updated: (DERBY-2558) client trhows ArrayIndexOutOfBounds exception instead of parameter out of range
Date Wed, 09 May 2007 17:07:16 GMT

     [ https://issues.apache.org/jira/browse/DERBY-2558?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Bryan Pendleton updated DERBY-2558:
-----------------------------------

    Attachment: IJCheckParms.diff

Attached is 'ijCheckParms.diff', a patch proposal.

This patch modifies IJ so that it cross-checks the number
of parameters in the prepared statement against the
number of columns in the provided result set, and complains
if the two do not have the same size.

The patch also includes a few tests.

derbyall and suites.All pass.

Please have a look at the patch proposal and tell me what you think.


> client trhows ArrayIndexOutOfBounds exception instead of parameter out of range 
> --------------------------------------------------------------------------------
>
>                 Key: DERBY-2558
>                 URL: https://issues.apache.org/jira/browse/DERBY-2558
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Client
>    Affects Versions: 10.3.0.0
>            Reporter: Kathey Marsden
>         Assigned To: Bryan Pendleton
>            Priority: Minor
>         Attachments: IJCheckParms.diff
>
>
>       
> The following sql gives an ArrayIndexOutOfBoundsException with client.  With embedded
we get the expected.
> ERROR XCL13: The parameter position '2' is out of range.  The number of parameters for
this prepared  statement is '1'.
> ij> create table t (i int);
> 0 rows inserted/updated/deleted
> ij> insert into t values (3), (4);
> 2 rows inserted/updated/deleted
> ij> execute 'select * from t where i=?' using 'values (3,4)';
> IJ WARNING: Autocommit may close using result set
> JAVA ERROR: java.lang.ArrayIndexOutOfBoundsException: 1
> java.lang.ArrayIndexOutOfBoundsException: 1
>         at org.apache.derby.client.am.PreparedStatement.setObjectX(PreparedStatement.java:1506)
>         at org.apache.derby.client.am.PreparedStatement.setObject(PreparedStatement.java:1458)
>         at org.apache.derby.impl.tools.ij.util.DisplayMulti(util.java:696)
>         at org.apache.derby.impl.tools.ij.utilMain.displayResult(utilMain.java:474)
>         at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(utilMain.java:351)
>         at org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:270)
>         at org.apache.derby.impl.tools.ij.Main.go(Main.java:215)
>         at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:181)
>         at org.apache.derby.impl.tools.ij.Main14.main(Main14.java:56)
>         at org.apache.derby.tools.ij.main(ij.java:71)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message