db-ddlutils-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rijk van Haaften (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DDLUTILS-208) PostgreSQL: RecreateTableChange loses autoIncrement
Date Tue, 04 Nov 2008 08:14:44 GMT

    [ https://issues.apache.org/jira/browse/DDLUTILS-208?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12644922#action_12644922
] 

Rijk van Haaften commented on DDLUTILS-208:
-------------------------------------------

Dropping works fine indeed. My autoincrement column is also primary key. Lets say it contains
5 items: 0,1,2,3,4 Now due to a RecreateTableChange, the sequence and the table are dropped,
then newly created and the data of the table is restored. But the sequence is not restored.
The new sequence starts at 0 (again). Now creation of a new row fails because primary key
0 already exists. The sequence needs to be restored to 4 (last_value = 4) so creation of new
rows goes on from 5 up.


> PostgreSQL: RecreateTableChange loses autoIncrement
> ---------------------------------------------------
>
>                 Key: DDLUTILS-208
>                 URL: https://issues.apache.org/jira/browse/DDLUTILS-208
>             Project: DdlUtils
>          Issue Type: Bug
>          Components: Core (No specific database), Core - PostgreSql
>         Environment: PostgreSQL 8.3.1
>            Reporter: Rijk van Haaften
>            Assignee: Thomas Dudziak
>             Fix For: 1.1
>
>
> PlatformImplBase.processChange(RecreateTableChange) does not migrate (autoincrement)
sequences, but does call SqlBuilder.dropTables. PostgreSqlBuilder.dropTables explicitly drops
the sequences:
>         for (int idx = 0; idx < columns.length; idx++)
>         {
>             dropAutoIncrementSequence(table, columns[idx]);
>         }
> (On the other hand, HsqlDbBuilder does not drop the sequence for instance.)
> The sequence is created again, but that causes 'duplicate' errors on the column using
the sequence.

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