Skip to content

Commit

Permalink
MDEV-9428 NO_AUTO_VALUE_ON_ZERO is ignored when a trigger before inse…
Browse files Browse the repository at this point in the history
…rt is defined

fix the *other* fill_record() too, arrgh!
  • Loading branch information
vuvova committed Jun 28, 2016
1 parent 9c38308 commit 6ce20fb
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 5 deletions.
5 changes: 2 additions & 3 deletions mysql-test/r/trigger_null-8605.result
Original file line number Diff line number Diff line change
Expand Up @@ -318,9 +318,8 @@ id
delete from t1;
create trigger t1_bi before insert on t1 for each row begin end;
insert t1 values (0);
select * from t1;
id
0
insert t1 (id) values (0);
ERROR 23000: Duplicate entry '0' for key 'PRIMARY'
drop table t1;
create table t1 (a int not null, b int);
create trigger trgi before update on t1 for each row do 1;
Expand Down
3 changes: 2 additions & 1 deletion mysql-test/t/trigger_null-8605.test
Original file line number Diff line number Diff line change
Expand Up @@ -336,7 +336,8 @@ select * from t1;
delete from t1;
create trigger t1_bi before insert on t1 for each row begin end;
insert t1 values (0);
select * from t1;
--error ER_DUP_ENTRY
insert t1 (id) values (0);
drop table t1;

#
Expand Down
3 changes: 2 additions & 1 deletion sql/sql_base.cc
Original file line number Diff line number Diff line change
Expand Up @@ -8728,7 +8728,8 @@ fill_record(THD *thd, TABLE *table_arg, List<Item> &fields, List<Item> &values,
value=v++;
Field *rfield= field->field;
TABLE* table= rfield->table;
if (rfield == table->next_number_field)
if (table->next_number_field &&
rfield->field_index == table->next_number_field->field_index)
table->auto_increment_field_not_null= TRUE;
if (rfield->vcol_info &&
value->type() != Item::DEFAULT_VALUE_ITEM &&
Expand Down

0 comments on commit 6ce20fb

Please sign in to comment.