Multiple records UPDATE overwrite TIGGERS modification in the same table. -------------------------------------------------------------------------
Key: CORE-6005 URL: http://tracker.firebirdsql.org/browse/CORE-6005 Project: Firebird Core Issue Type: Bug Components: Engine Affects Versions: 3.0.4 Reporter: Javier Fernández Castillejo Priority: Critical CREATE TABLE TEST_UPDATE ( ID INTEGER NOT NULL, FIELD1 INTEGER, FIELD2 INTEGER, CONSTRAINT PK_TEST_UPDATE PRIMARY KEY (ID) ); SET TERM ^^ ; CREATE TRIGGER TEST_UPDATE_AU FOR TEST_UPDATE ACTIVE AFTER UPDATE POSITION 0 AS begin Update TEST_UPDATE SET FIELD2=NEW.FIELD1 Where ID=NEW.ID+1; end ^^ SET TERM ; ^^ Insert into TEST_UPDATE (ID,FIELD1,FIELD2) VALUES (1,0,0); Insert into TEST_UPDATE (ID,FIELD1,FIELD2) VALUES (2,0,0); Insert into TEST_UPDATE (ID,FIELD1,FIELD2) VALUES (3,0,0); Insert into TEST_UPDATE (ID,FIELD1,FIELD2) VALUES (4,0,0); Insert into TEST_UPDATE (ID,FIELD1,FIELD2) VALUES (5,0,0); Update TEST_UPDATE Set Field1=10 Where ID in (2,3); === In Firebird 3.0.4 === Select * From TEST_UPDATE; ID,FIELD1,FIELD2 1,0,0 2,10,0 3,10,0 <== This value must be 10 4,0,10 5,0,0 In Firebird 2.5 is Correct!!!! ID,FIELD1,FIELD2 1,0,0 2,10,0 3,10,10 4,0,10 5,0,0 -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://tracker.firebirdsql.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel