1036
1036
drop table t2, t1;
1038
1038
--disable_query_log
1043
# bug 513012: On a table with a trigger the same record is updated more than once in one statement
1046
--disable_result_log
1047
create table tb0_eng2 (
1048
i1 int NOT NULL auto_increment, primary key (i1),
1052
insert into tb0_eng2 (f1,f2) values (7, 'init_val'), (14, 'init_val'),
1053
(10, 'init_val'), (14, 'init_val'), (4, 'init_val');
1055
CREATE TABLE tb0_logs (
1056
i1 INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (i1),
1057
entry_dsc CHAR(100) );
1059
Create trigger tb0_eng2_upd after update on tb0_eng2 for each row
1060
insert into tb0_logs (entry_dsc)
1061
values (concat('Update row ', old.i1, ' ', old.f2, ' -> ', new.f2));
1069
let $prev_log = `SELECT COUNT(*) FROM tb0_logs`;
1071
eval update tb0_eng2 set f2='Update #$counter' where f1=10;
1073
let $new_log = `SELECT COUNT(*) FROM tb0_logs`;
1074
let $run = `SELECT $new_log-$prev_log=1`;
1076
--echo # ROUND $counter finished, prev log count = $prev_log, new log count = $new_log
1077
if (`SELECT $counter>=500`)
1079
--echo # Could not reproduce the problem in $counter iterations
1085
select * from tb0_logs order by i1 desc limit 5;
1088
drop trigger tb0_eng2;
1089
drop table tb0_eng2, tb0_logs;
1041
1090
drop database pbxt;
1042
1091
--enable_query_log