summaryrefslogtreecommitdiff
path: root/sql/sql_update.cc
diff options
context:
space:
mode:
authorunknown <bell@sanja.is.com.ua>2002-03-15 23:57:31 +0200
committerunknown <bell@sanja.is.com.ua>2002-03-15 23:57:31 +0200
commit0510e98e11666728d21ae29621adbe134454dc71 (patch)
tree691610fcbd4313eb2d79af0b91394cb2b9410f21 /sql/sql_update.cc
parent75a268a65be94b15b1651b2dab1c969d24238f48 (diff)
downloadmariadb-git-0510e98e11666728d21ae29621adbe134454dc71.tar.gz
processing trunsactional tables in query cache
mysql-test/r/innodb_cache.result: new test for query cache with transactions mysql-test/t/innodb_cache.test: new test for query cache with transactions sql/sql_cache.cc: processing trunsactional tables in query cache & removing strlen sql/sql_class.cc: processing trunsactional tables in query cache & added transaction-live memory sql/sql_class.h: processing trunsactional tables in query cache & added transaction-live memory sql/sql_parse.cc: processing trunsactional tables in query cache & added transaction-live memory sql/table.h: removing strlen operation from query cache
Diffstat (limited to 'sql/sql_update.cc')
-rw-r--r--sql/sql_update.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/sql/sql_update.cc b/sql/sql_update.cc
index 6c868b542d1..a9eb6cef6a6 100644
--- a/sql/sql_update.cc
+++ b/sql/sql_update.cc
@@ -324,7 +324,8 @@ int mysql_update(THD *thd,
thd->lock=0;
}
if (updated)
- query_cache.invalidate(table_list);
+ query_cache.invalidate(thd, table_list, 1);
+
delete select;
if (error >= 0)
send_error(&thd->net,thd->killed ? ER_SERVER_SHUTDOWN : 0); /* purecov: inspected */
@@ -787,7 +788,8 @@ bool multi_update::send_eof()
sprintf(buff,ER(ER_UPDATE_INFO), (long) found, (long) updated,
(long) thd->cuted_fields);
if (updated)
- query_cache.invalidate(update_tables);
+ query_cache.invalidate(thd, update_tables, 1);
+
::send_ok(&thd->net,
(thd->client_capabilities & CLIENT_FOUND_ROWS) ? found : updated,
thd->insert_id_used ? thd->insert_id() : 0L,buff);