From 28be8f919f768542465b07099f711632e3334f6e Mon Sep 17 00:00:00 2001 From: Davi Arnaut Date: Thu, 7 Oct 2010 21:05:23 -0300 Subject: [PATCH] Bug#56822: Add a thread state for sessions waiting on the query cache lock Move Query_cache_wait_state declaration out of a debug block. --- sql/sql_cache.cc | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/sql/sql_cache.cc b/sql/sql_cache.cc index b68355206b5..8c3abdbf1b0 100644 --- a/sql/sql_cache.cc +++ b/sql/sql_cache.cc @@ -372,6 +372,17 @@ TODO list: __LINE__,(ulong)(B)));B->query()->unlock_reading();} #define DUMP(C) DBUG_EXECUTE("qcache", {\ (C)->cache_dump(); (C)->queries_dump();(C)->tables_dump();}) +#else +#define RW_WLOCK(M) mysql_rwlock_wrlock(M) +#define RW_RLOCK(M) mysql_rwlock_rdlock(M) +#define RW_UNLOCK(M) mysql_rwlock_unlock(M) +#define BLOCK_LOCK_WR(B) B->query()->lock_writing() +#define BLOCK_LOCK_RD(B) B->query()->lock_reading() +#define BLOCK_UNLOCK_WR(B) B->query()->unlock_writing() +#define BLOCK_UNLOCK_RD(B) B->query()->unlock_reading() +#define DUMP(C) +#endif + /** Thread state to be used when the query cache lock needs to be acquired. @@ -400,16 +411,6 @@ struct Query_cache_wait_state } }; -#else -#define RW_WLOCK(M) mysql_rwlock_wrlock(M) -#define RW_RLOCK(M) mysql_rwlock_rdlock(M) -#define RW_UNLOCK(M) mysql_rwlock_unlock(M) -#define BLOCK_LOCK_WR(B) B->query()->lock_writing() -#define BLOCK_LOCK_RD(B) B->query()->lock_reading() -#define BLOCK_UNLOCK_WR(B) B->query()->unlock_writing() -#define BLOCK_UNLOCK_RD(B) B->query()->unlock_reading() -#define DUMP(C) -#endif /** Serialize access to the query cache.