summaryrefslogtreecommitdiff
path: root/sql/sql_cache.cc
diff options
context:
space:
mode:
authorkostja@bodhi.local <>2006-11-30 02:36:18 +0300
committerkostja@bodhi.local <>2006-11-30 02:36:18 +0300
commit9fa2b75804121f4fa6656ba9472a6fdee0d60673 (patch)
tree04251b69b15ebb521e538025af2e5124e09aabb1 /sql/sql_cache.cc
parent74e3aa3143c562f6b43b7a948d987a17fecad744 (diff)
parent4d418e6c43d2d17c84965da08a0a22451fbc96fb (diff)
downloadmariadb-git-9fa2b75804121f4fa6656ba9472a6fdee0d60673.tar.gz
Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into bodhi.local:/opt/local/work/mysql-5.1-runtime-merge
Diffstat (limited to 'sql/sql_cache.cc')
-rw-r--r--sql/sql_cache.cc19
1 files changed, 17 insertions, 2 deletions
diff --git a/sql/sql_cache.cc b/sql/sql_cache.cc
index 3362ec76fc2..a6e15c55641 100644
--- a/sql/sql_cache.cc
+++ b/sql/sql_cache.cc
@@ -737,7 +737,11 @@ void query_cache_end_of_result(THD *thd)
header->query()));
query_cache.wreck(__LINE__, "");
- BLOCK_UNLOCK_WR(query_block);
+ /*
+ We do not need call of BLOCK_UNLOCK_WR(query_block); here because
+ query_cache.wreck() switched query cache off but left content
+ untouched for investigation (it is debugging method).
+ */
goto end;
}
#endif
@@ -3523,7 +3527,7 @@ uint Query_cache::filename_2_table_key (char *key, const char *path,
#if defined(DBUG_OFF) && !defined(USE_QUERY_CACHE_INTEGRITY_CHECK)
-void wreck(uint line, const char *message) {}
+void wreck(uint line, const char *message) { query_cache_size = 0; }
void bins_dump() {}
void cache_dump() {}
void queries_dump() {}
@@ -3535,6 +3539,17 @@ my_bool in_blocks(Query_cache_block * point) { return 0; }
#else
+
+/*
+ Debug method which switch query cache off but left content for
+ investigation.
+
+ SYNOPSIS
+ Query_cache::wreck()
+ line line of the wreck() call
+ message message for logging
+*/
+
void Query_cache::wreck(uint line, const char *message)
{
THD *thd=current_thd;