Commit 526a67fb authored by unknown's avatar unknown
Browse files

Merge tulin@bk-internal.mysql.com:/tmp/mysql-4.1-ndbqc

into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-qc


sql/sql_cache.cc:
  Auto merged
parents e0b469aa 93191c73
Loading
Loading
Loading
Loading
+0 −43
Original line number Diff line number Diff line
set GLOBAL query_cache_size=1355776;
reset query cache;
flush status;
drop table if exists t1,t2;
CREATE TABLE t1 (a int) ENGINE=ndbcluster;
CREATE TABLE t2 (a int);
select * from t1;
a
show status like "Qcache_queries_in_cache";
Variable_name	Value
Qcache_queries_in_cache	0
show status like "Qcache_inserts";
Variable_name	Value
Qcache_inserts	0
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	0
select * from t2;
a
show status like "Qcache_queries_in_cache";
Variable_name	Value
Qcache_queries_in_cache	1
show status like "Qcache_inserts";
Variable_name	Value
Qcache_inserts	1
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	0
select * from t1;
a
select * from t2;
a
show status like "Qcache_queries_in_cache";
Variable_name	Value
Qcache_queries_in_cache	1
show status like "Qcache_inserts";
Variable_name	Value
Qcache_inserts	1
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	1
drop table t1, t2;
SET GLOBAL query_cache_size=0;
+25 −7
Original line number Diff line number Diff line
-- source include/have_query_cache.inc
-- source include/have_ndb.inc

set GLOBAL ndb_query_cache_type=on;
# following line have to be removed when ndb_query_cache_type will made
# global only
set ndb_query_cache_type=on;
set GLOBAL query_cache_size=1355776;
reset query cache;
flush status;

--disable_warnings
drop table if exists t1,t2;
drop table if exists t1;
--enable_warnings

CREATE TABLE t1 (a int) ENGINE=ndbcluster;
CREATE TABLE t2 (a int);

insert into t1 value (2);
select * from t1;
show status like "Qcache_queries_in_cache";
show status like "Qcache_inserts";
show status like "Qcache_hits";
connect (con1,localhost,root,,);
connection con1;
use test;
set autocommit=0;
update t1 set a=3;
connect (con2,localhost,root,,);
connection con2;
select * from t1;
select * from t1;
show status like "Qcache_queries_in_cache";
show status like "Qcache_inserts";
show status like "Qcache_hits";
select * from t2;
connection con1;
select * from t1;
select * from t1;
show status like "Qcache_queries_in_cache";
show status like "Qcache_inserts";
show status like "Qcache_hits";
commit;
connection con2;
select * from t1;
select * from t1;
select * from t2;
show status like "Qcache_queries_in_cache";
show status like "Qcache_inserts";
show status like "Qcache_hits";
drop table t1;

drop table t1, t2;

SET GLOBAL query_cache_size=0;
+2 −1
Original line number Diff line number Diff line
@@ -1087,7 +1087,6 @@ Query_cache::send_result_to_client(THD *thd, char *sql, uint query_length)
      DBUG_PRINT("qcache", ("Handler does not allow caching for %s.%s",
			    table_list.db, table_list.alias));
      BLOCK_UNLOCK_RD(query_block);
      thd->lex->safe_to_cache_query= 0;          // Don't try to cache this
      if (engine_data != table->engine_data())
      {
        DBUG_PRINT("qcache",
@@ -1096,6 +1095,8 @@ Query_cache::send_result_to_client(THD *thd, char *sql, uint query_length)
                              engine_data, table->engine_data()));
        invalidate_table(table->db(), table->key_length());
      }
      else
        thd->lex->safe_to_cache_query= 0;       // Don't try to cache this
      goto err_unlock;				// Parse query
    }
    else