db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yip Ng (JIRA)" <derby-...@db.apache.org>
Subject [jira] Updated: (DERBY-1554) IDENTITY_VAL_LOCAL() returned value is modified incorrectly by a multi-row INSERT statement.
Date Fri, 04 Aug 2006 06:26:27 GMT
     [ http://issues.apache.org/jira/browse/DERBY-1554?page=all ]

Yip Ng updated DERBY-1554:
--------------------------

    Attachment: derby1554trunkstat01.txt
                derby1554trunkdiff01.txt

Attaching my initial patch - derby1554trunkdiff01.txt for DERBY-1554.  This patch only contains
the fix.  I ran derbyall and there are some diffs but they are expected.  Will go through
the diffs to see if patch is ok and submit a followup patch for fixing the master output with
additional testcases.

The patch is now checking for RowResultSet type for user supplied value for identity column.
 If the source result set is not of that type, Derby won't update the identityVal.   

> IDENTITY_VAL_LOCAL() returned value is modified incorrectly by a multi-row INSERT statement.
> --------------------------------------------------------------------------------------------
>
>                 Key: DERBY-1554
>                 URL: http://issues.apache.org/jira/browse/DERBY-1554
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.2.0.0
>            Reporter: Daniel John Debrunner
>         Assigned To: Yip Ng
>             Fix For: 10.2.0.0
>
>         Attachments: DERBY-1554.diff, DERBY-1554.stat, derby1554trunkdiff01.txt, derby1554trunkstat01.txt
>
>
> Changes made in DERBY-353 break the documented behaviour of IDENTITY_VAL_LOCAL(). Now
the returned value is modified when a multi-row insert is performed.
> IDENTITY_VAL_LOCAL() should not be updated when this occurs.
> For this script the last value returned should be 2 (as in 10.1) but in 10.2 is 4
> create table ta (a int, b int generated always as identity);
> insert into ta(a) values 100;
> values IDENTITY_VAL_LOCAL();
> insert into ta(a) values 200;
> values IDENTITY_VAL_LOCAL();
> insert into ta(a) values 300,400;
> values IDENTITY_VAL_LOCAL();

-- 
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