summaryrefslogtreecommitdiff
path: root/sql/sql_update.cc
diff options
context:
space:
mode:
authorunknown <svoj@may.pils.ru>2006-10-08 15:14:53 +0500
committerunknown <svoj@may.pils.ru>2006-10-08 15:14:53 +0500
commitf43ee99c306f46285fbd6f2c253d85c3c02f0704 (patch)
treeb75dc089f294d6626c237df900b3c4a134c12c05 /sql/sql_update.cc
parent8f3322529520cd223c7d87318b4199e09d6ac2fc (diff)
parent12fb87ac28467fc112c87a8b7d437a4bd5dc6166 (diff)
downloadmariadb-git-f43ee99c306f46285fbd6f2c253d85c3c02f0704.tar.gz
Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0
into may.pils.ru:/home/svoj/devel/bk/mysql-5.0-engines sql/sql_update.cc: Auto merged
Diffstat (limited to 'sql/sql_update.cc')
-rw-r--r--sql/sql_update.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/sql/sql_update.cc b/sql/sql_update.cc
index a4e05a96f9b..24577f63124 100644
--- a/sql/sql_update.cc
+++ b/sql/sql_update.cc
@@ -1095,6 +1095,8 @@ multi_update::initialize_tables(JOIN *join)
List<Item> temp_fields= *fields_for_table[cnt];
ORDER group;
+ if (ignore)
+ table->file->extra(HA_EXTRA_IGNORE_DUP_KEY);
if (table == main_table) // First table in join
{
if (safe_update_on_fly(join->join_tab, &temp_fields))
@@ -1210,7 +1212,11 @@ multi_update::~multi_update()
{
TABLE_LIST *table;
for (table= update_tables ; table; table= table->next_local)
+ {
table->table->no_keyread= table->table->no_cache= 0;
+ if (ignore)
+ table->table->file->extra(HA_EXTRA_NO_IGNORE_DUP_KEY);
+ }
if (tmp_tables)
{