Subject | Re: [firebird-support] Deadlock during Alter Table |
---|---|
Author | Dmitry Yemanov |
Post date | 2007-12-16T08:24:13Z |
burmair wrote:
above, you have the DML transaction active and possibly conflicting with
the changes done later in the DDL transaction during processing of ALTER.
Dmitry
>A commit is missing here.
> SET NAMES UTF8;
>
> SET SQL DIALECT 3;
>
> SET AUTODDL ON;
>
> ALTER TABLE VALUE_BUNDLE DROP CONSTRAINT INTEG_28;
>
> /* Alter Field (Null / Not Null)... */
> UPDATE RDB$RELATION_FIELDS SET RDB$NULL_FLAG = 1 WHERE
> RDB$FIELD_NAME='UUID' AND RDB$RELATION_NAME='VALUE_BUNDLE';
>
> /* Alter Field (Null / Not Null)... */
> UPDATE RDB$RELATION_FIELDS SET RDB$NULL_FLAG = NULL WHERE
> RDB$FIELD_NAME='FV_UUID' AND RDB$RELATION_NAME='VALUE_BUNDLE';
>
> /* Alter Field (Null / Not Null)... */
> UPDATE RDB$RELATION_FIELDS SET RDB$NULL_FLAG = NULL WHERE
> RDB$FIELD_NAME='FV_ROW' AND RDB$RELATION_NAME='VALUE_BUNDLE';
> /* Create Primary Key... */ISQL executes DML and DDL in different transactions. Without a commit
> ALTER TABLE VALUE_BUNDLE ADD PRIMARY KEY (UUID);
> Statement failed, SQLCODE = -913
> deadlock
> =====================
>
> Can anyone tell me what the problem is here?
above, you have the DML transaction active and possibly conflicting with
the changes done later in the DDL transaction during processing of ALTER.
Dmitry