diff options
author | unknown <dlenev@mysql.com> | 2005-04-11 00:30:23 +0400 |
---|---|---|
committer | unknown <dlenev@mysql.com> | 2005-04-11 00:30:23 +0400 |
commit | 3e0a62636725b4bfa958d1416d80a12d269b1b94 (patch) | |
tree | 399431c2e664a0e664adac3515c389e2d29de3a7 | |
parent | c6bb22936a220aca3d1b608f467f769d8f5cfab7 (diff) | |
download | mariadb-git-3e0a62636725b4bfa958d1416d80a12d269b1b94.tar.gz |
Fix for bug #9796 "Query Cache caches queries with CURRENT_USER()
function".
We should not cache queries using CURRENT_USER() function as we do it
for some other functions, e.g. USER() function.
mysql-test/r/query_cache.result:
Let us test that queries with CURRENT_USER() function are not cached.
mysql-test/t/query_cache.test:
Let us test that queries with CURRENT_USER() function are not cached.
sql/item_create.cc:
create_func_current_user():
We should not cache queries which use CURRENT_USER() function.
-rw-r--r-- | mysql-test/r/query_cache.result | 2 | ||||
-rw-r--r-- | mysql-test/t/query_cache.test | 1 | ||||
-rw-r--r-- | sql/item_create.cc | 1 |
3 files changed, 4 insertions, 0 deletions
diff --git a/mysql-test/r/query_cache.result b/mysql-test/r/query_cache.result index 85fe77b1f10..a472a1b75c0 100644 --- a/mysql-test/r/query_cache.result +++ b/mysql-test/r/query_cache.result @@ -299,6 +299,8 @@ select UNIX_TIMESTAMP() from t1; UNIX_TIMESTAMP() select USER() from t1; USER() +select CURRENT_USER() from t1; +CURRENT_USER() select benchmark(1,1) from t1; benchmark(1,1) show status like "Qcache_queries_in_cache"; diff --git a/mysql-test/t/query_cache.test b/mysql-test/t/query_cache.test index 61fbadde1e1..89a9707a237 100644 --- a/mysql-test/t/query_cache.test +++ b/mysql-test/t/query_cache.test @@ -182,6 +182,7 @@ select LAST_INSERT_ID() from t1; select RAND() from t1; select UNIX_TIMESTAMP() from t1; select USER() from t1; +select CURRENT_USER() from t1; select benchmark(1,1) from t1; show status like "Qcache_queries_in_cache"; # diff --git a/sql/item_create.cc b/sql/item_create.cc index 6809d6892b0..877e63047d6 100644 --- a/sql/item_create.cc +++ b/sql/item_create.cc @@ -297,6 +297,7 @@ Item *create_func_current_user() char buff[HOSTNAME_LENGTH+USERNAME_LENGTH+2]; uint length; + thd->safe_to_cache_query= 0; length= (uint) (strxmov(buff, thd->priv_user, "@", thd->priv_host, NullS) - buff); return new Item_string(NullS, thd->memdup(buff, length), length); |