diff options
Diffstat (limited to 'sql/sql_union.cc')
-rw-r--r-- | sql/sql_union.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sql/sql_union.cc b/sql/sql_union.cc index 106c134223e..3cf7f576cbf 100644 --- a/sql/sql_union.cc +++ b/sql/sql_union.cc @@ -83,13 +83,16 @@ int select_union::send_data(List<Item> &values) */ return -1; } + bool is_duplicate; /* create_internal_tmp_table_from_heap will generate error if needed */ if (table->file->is_fatal_error(write_err, HA_CHECK_DUP) && create_internal_tmp_table_from_heap(thd, table, tmp_table_param.start_recinfo, &tmp_table_param.recinfo, - write_err, 1)) + write_err, 1, &is_duplicate)) return 1; + if (is_duplicate) + return -1; } return 0; } |