summaryrefslogtreecommitdiff
path: root/sql/sql_insert.cc
diff options
context:
space:
mode:
Diffstat (limited to 'sql/sql_insert.cc')
-rw-r--r--sql/sql_insert.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc
index 69fc7c00955..f0b9062f740 100644
--- a/sql/sql_insert.cc
+++ b/sql/sql_insert.cc
@@ -262,6 +262,8 @@ int mysql_insert(THD *thd,TABLE_LIST *table_list, List<Item> &fields,
info.copied=values_list.elements;
end_delayed_insert(thd);
}
+ if (info.copied || info.deleted)
+ query_cache_invalidate3(thd, table_list, 1);
}
else
{
@@ -303,6 +305,8 @@ int mysql_insert(THD *thd,TABLE_LIST *table_list, List<Item> &fields,
}
if (using_transactions)
error=ha_autocommit_or_rollback(thd,error);
+ if (info.copied || info.deleted)
+ query_cache_invalidate3(thd, table_list, 1);
if (thd->lock)
{
mysql_unlock_tables(thd, thd->lock);
@@ -310,8 +314,6 @@ int mysql_insert(THD *thd,TABLE_LIST *table_list, List<Item> &fields,
}
}
thd->proc_info="end";
- if (info.copied || info.deleted)
- query_cache_invalidate3(thd, table_list, 1);
table->time_stamp=save_time_stamp; // Restore auto timestamp ptr
table->next_number_field=0;
thd->count_cuted_fields=0;