Commit 2b0a3dbe authored by unknown's avatar unknown
Browse files

Merged "query cache for ndb" to 5.0


BitKeeper/etc/logging_ok:
  auto-union
sql/ha_innodb.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
sql/handler.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_cache.h:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/ha_innodb.h:
  Hand merged
sql/ha_ndbcluster.cc:
  Merge with gathering of stats
sql/sql_cache.cc:
  Use new table def cache
sql/table.h:
  table.h had been cleaned up
parents f32743b7 38e395aa
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -152,6 +152,7 @@ mronstrom@build.mysql.com
mronstrom@mysql.com
mskold@mysql.com
msvensson@build.mysql.com
msvensson@neptunus.homeip.net
mwagner@cash.mwagner.org
mwagner@evoq.mwagner.org
mwagner@here.mwagner.org
@@ -160,6 +161,7 @@ mwagner@work.mysql.com
mydev@mysql.com
mysql@home.(none)
mysql@mc04.(none)
mysqldev@bk-internal.mysql.com
mysqldev@build.mysql2.com
mysqldev@melody.local
mysqldev@mysql.com
+28 −0
Original line number Diff line number Diff line
# Setup connections to both MySQL Servers connected to the cluster
connect (server1,127.0.0.1,root,,test,$MASTER_MYPORT,);
connect (server2,127.0.0.1,root,,test,$MASTER_MYPORT1,);

# Check that server1 has NDB  support
connection server1;
disable_query_log;
--disable_warnings
drop table if exists t1, t2;
--enable_warnings
flush tables;
@r/have_ndb.require show variables like "have_ndbcluster";
@r/server_id.require show variables like "server_id";
enable_query_log;

# Check that server2 has NDB support
connection server2;
disable_query_log;
--disable_warnings
drop table if exists t1, t2;
--enable_warnings
flush tables;
@r/have_ndb.require show variables like "have_ndbcluster";
@r/server_id1.require show variables like "server_id";
enable_query_log;

# Set the default connection to 'server1'
connection server1;
+1 −3
Original line number Diff line number Diff line
@@ -2,6 +2,4 @@
disable_query_log;
show variables like "have_ndbcluster";
enable_query_log;
#connect (server1,127.0.0.1,root,,test,$MASTER_MYPORT,$MASTER_MYSOCK);
#connect (server2,127.0.0.1,root,,test,$MASTER_MYPORT1,$MASTER_MYSOCK1);
#connection server1;
+164 −16
Original line number Diff line number Diff line
drop table if exists t1;
set GLOBAL query_cache_type=on;
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);
CREATE TABLE t1 ( pk int not null primary key,
a int, b int not null, c varchar(20)) ENGINE=ndbcluster;
insert into t1 value (1, 2, 3, 'First row');
select * from t1;
a
pk	a	b	c
1	2	3	First row
show status like "Qcache_queries_in_cache";
Variable_name	Value
Qcache_queries_in_cache	0
Qcache_queries_in_cache	1
show status like "Qcache_inserts";
Variable_name	Value
Qcache_inserts	0
Qcache_inserts	1
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	0
select * from t2;
a
select * from t1;
pk	a	b	c
1	2	3	First row
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	1
update t1 set a=3 where pk=1;
select * from t1;
pk	a	b	c
1	3	3	First row
show status like "Qcache_inserts";
Variable_name	Value
Qcache_inserts	2
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	1
insert into t1 value (2, 7, 8, 'Second row');
insert into t1 value (4, 5, 6, 'Fourth row');
select * from t1;
pk	a	b	c
2	7	8	Second row
4	5	6	Fourth row
1	3	3	First row
show status like "Qcache_inserts";
Variable_name	Value
Qcache_inserts	3
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	1
select * from t1;
pk	a	b	c
2	7	8	Second row
4	5	6	Fourth row
1	3	3	First row
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	2
select * from t1 where b=3;
pk	a	b	c
1	3	3	First row
show status like "Qcache_queries_in_cache";
Variable_name	Value
Qcache_queries_in_cache	2
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	2
select * from t1 where b=3;
pk	a	b	c
1	3	3	First row
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	3
delete from t1 where c='Fourth row';
show status like "Qcache_queries_in_cache";
Variable_name	Value
Qcache_queries_in_cache	0
select * from t1 where b=3;
pk	a	b	c
1	3	3	First row
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	3
use test;
select * from t1;
pk	a	b	c
2	7	8	Second row
1	3	3	First row
select * from t1 where b=3;
pk	a	b	c
1	3	3	First row
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	4
update t1 set a=4 where b=3;
use test;
show status like "Qcache_queries_in_cache";
Variable_name	Value
Qcache_queries_in_cache	0
select * from t1;
pk	a	b	c
2	7	8	Second row
1	4	3	First row
select * from t1;
pk	a	b	c
2	7	8	Second row
1	4	3	First row
show status like "Qcache_inserts";
Variable_name	Value
Qcache_inserts	7
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	5
select * from t1;
pk	a	b	c
2	7	8	Second row
1	4	3	First row
select * from t1;
pk	a	b	c
2	7	8	Second row
1	4	3	First row
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
Qcache_inserts	7
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	0
Qcache_hits	7
begin;
update t1 set a=5 where pk=1;
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	7
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	7
select * from t1;
a
select * from t2;
a
pk	a	b	c
2	7	8	Second row
1	4	3	First row
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
Qcache_inserts	8
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	1
drop table t1, t2;
Qcache_hits	7
commit;
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	8
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	7
select * from t1;
pk	a	b	c
2	7	8	Second row
1	5	3	First row
show status like "Qcache_inserts";
Variable_name	Value
Qcache_inserts	9
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	7
select * from t1;
pk	a	b	c
2	7	8	Second row
1	5	3	First row
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	9
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	8
drop table t1;
show status like "Qcache_queries_in_cache";
Variable_name	Value
Qcache_queries_in_cache	0
SET GLOBAL query_cache_size=0;
+193 −0
Original line number Diff line number Diff line
drop table if exists t1;
set GLOBAL query_cache_type=on;
set GLOBAL query_cache_size=1355776;
set GLOBAL ndb_cache_check_time=5;
reset query cache;
flush status;
CREATE TABLE t1 ( pk int not null primary key,
a int, b int not null, c varchar(20)) ENGINE=ndbcluster;
insert into t1 value (1, 2, 3, 'First row');
select * from t1;
pk	a	b	c
1	2	3	First row
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;
pk	a	b	c
1	2	3	First row
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	1
update t1 set a=3 where pk=1;
select * from t1;
pk	a	b	c
1	3	3	First row
show status like "Qcache_inserts";
Variable_name	Value
Qcache_inserts	2
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	1
insert into t1 value (2, 7, 8, 'Second row');
insert into t1 value (4, 5, 6, 'Fourth row');
select * from t1;
pk	a	b	c
2	7	8	Second row
4	5	6	Fourth row
1	3	3	First row
show status like "Qcache_inserts";
Variable_name	Value
Qcache_inserts	3
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	1
select * from t1;
pk	a	b	c
2	7	8	Second row
4	5	6	Fourth row
1	3	3	First row
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	2
select * from t1 where b=3;
pk	a	b	c
1	3	3	First row
show status like "Qcache_queries_in_cache";
Variable_name	Value
Qcache_queries_in_cache	2
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	2
select * from t1 where b=3;
pk	a	b	c
1	3	3	First row
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	3
delete from t1 where c='Fourth row';
show status like "Qcache_queries_in_cache";
Variable_name	Value
Qcache_queries_in_cache	0
select * from t1 where b=3;
pk	a	b	c
1	3	3	First row
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	3
use test;
select * from t1;
pk	a	b	c
2	7	8	Second row
1	3	3	First row
select * from t1 where b=3;
pk	a	b	c
1	3	3	First row
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	4
update t1 set a=4 where b=3;
use test;
show status like "Qcache_queries_in_cache";
Variable_name	Value
Qcache_queries_in_cache	0
select * from t1;
pk	a	b	c
2	7	8	Second row
1	4	3	First row
select * from t1;
pk	a	b	c
2	7	8	Second row
1	4	3	First row
show status like "Qcache_inserts";
Variable_name	Value
Qcache_inserts	7
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	5
select * from t1;
pk	a	b	c
2	7	8	Second row
1	4	3	First row
select * from t1;
pk	a	b	c
2	7	8	Second row
1	4	3	First row
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	7
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	7
begin;
update t1 set a=5 where pk=1;
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	7
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	7
select * from t1;
pk	a	b	c
2	7	8	Second row
1	4	3	First row
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	8
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	7
commit;
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	8
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	7
select * from t1;
pk	a	b	c
2	7	8	Second row
1	5	3	First row
show status like "Qcache_inserts";
Variable_name	Value
Qcache_inserts	9
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	7
select * from t1;
pk	a	b	c
2	7	8	Second row
1	5	3	First row
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	9
show status like "Qcache_hits";
Variable_name	Value
Qcache_hits	8
drop table t1;
show status like "Qcache_queries_in_cache";
Variable_name	Value
Qcache_queries_in_cache	0
SET GLOBAL query_cache_size=0;
SET GLOBAL ndb_cache_check_time=0;
Loading