mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Removed not used functions from sql_cache
Added new tests to testsuite. extra/resolveip.c: Portabilit fix. mysql-test/create-test-result: Fix for new mysql-test-run mysql-test/r/query_cache.result: Updated benchmarks mysql-test/t/query_cache-master.opt: Updated benchmarks mysql-test/t/query_cache.test: Updated benchmarks sql/sql_cache.cc: Removed not used functions sql/sql_cache.h: Removed not used functions
This commit is contained in:
@ -5,7 +5,7 @@
|
||||
# If you have a spare moment feel free to improve it - the right way is
|
||||
# to start mysqld yourself and run mysqltest -r
|
||||
|
||||
RESULT_DIR=r/3.23
|
||||
RESULT_DIR=r
|
||||
if [ -z $EDITOR] ; then
|
||||
EDITOR=vi
|
||||
fi
|
||||
@ -32,7 +32,7 @@ result_file=$RESULT_DIR/$test_name.result
|
||||
|
||||
touch $result_file
|
||||
echo "Running the test case against empty file, will fail, but don't worry"
|
||||
./mysql-test-run $test_name
|
||||
./mysql-test-run --do-test=$test_name
|
||||
|
||||
reject_file=$result_file.reject
|
||||
|
||||
|
@ -2,7 +2,7 @@ flush query cache;
|
||||
flush query cache;
|
||||
reset query cache;
|
||||
flush status;
|
||||
drop table if exists t1,t2,t3;
|
||||
drop table if exists t1,t2,t3,t11,t21;
|
||||
create table t1 (a int not null);
|
||||
insert into t1 values (1),(2),(3);
|
||||
select * from t1;
|
||||
@ -173,6 +173,59 @@ show status like "Qcache_free_blocks";
|
||||
Variable_name Value
|
||||
Qcache_free_blocks 1
|
||||
drop table t1, t2;
|
||||
create table t1 (a text not null);
|
||||
create table t11 (a text not null);
|
||||
create table t2 (a text not null);
|
||||
create table t21 (a text not null);
|
||||
create table t3 (a text not null);
|
||||
insert into t1 values("1111111111111111111111111111111111111111111111111111");
|
||||
insert into t11 select * from t1;
|
||||
insert into t21 select * from t1;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t3 select * from t1;
|
||||
insert into t3 select * from t2;
|
||||
insert into t3 select * from t1;
|
||||
select * from t11;
|
||||
select * from t21;
|
||||
show status like "Qcache_total_blocks";
|
||||
Variable_name Value
|
||||
Qcache_total_blocks 7
|
||||
show status like "Qcache_free_blocks";
|
||||
Variable_name Value
|
||||
Qcache_free_blocks 1
|
||||
insert into t11 values("");
|
||||
select * from t3;
|
||||
show status like "Qcache_total_blocks";
|
||||
Variable_name Value
|
||||
Qcache_total_blocks 8
|
||||
show status like "Qcache_free_blocks";
|
||||
Variable_name Value
|
||||
Qcache_free_blocks 1
|
||||
flush query cache;
|
||||
show status like "Qcache_total_blocks";
|
||||
Variable_name Value
|
||||
Qcache_total_blocks 7
|
||||
show status like "Qcache_free_blocks";
|
||||
Variable_name Value
|
||||
Qcache_free_blocks 1
|
||||
drop table t1, t2, t3, t11, t21;
|
||||
set sql_query_cache_type=demand;
|
||||
create table t1 (a int not null);
|
||||
insert into t1 values (1),(2),(3);
|
||||
@ -264,7 +317,6 @@ insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
drop table t2;
|
||||
show status like "Qcache_hits";
|
||||
Variable_name Value
|
||||
Qcache_hits 4
|
||||
@ -279,4 +331,48 @@ show status like "Qcache_queries_in_cache";
|
||||
Variable_name Value
|
||||
Qcache_queries_in_cache 2
|
||||
reset query cache;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
select * from t1;
|
||||
show status like "Qcache_queries_in_cache";
|
||||
Variable_name Value
|
||||
Qcache_queries_in_cache 0
|
||||
drop table t1,t2;
|
||||
create database foo;
|
||||
create table foo.t1 (i int not null auto_increment, a int, primary key (i));
|
||||
insert into foo.t1 (a) values (1);
|
||||
select * from foo.t1 where i is null;
|
||||
i a
|
||||
1 1
|
||||
select * from foo.t1;
|
||||
i a
|
||||
1 1
|
||||
show status like "Qcache_queries_in_cache";
|
||||
Variable_name Value
|
||||
Qcache_queries_in_cache 1
|
||||
drop database foo;
|
||||
show status like "Qcache_queries_in_cache";
|
||||
Variable_name Value
|
||||
Qcache_queries_in_cache 0
|
||||
create table t1 (a char(1) not null);
|
||||
insert into t1 values("<22>");
|
||||
select * from t1;
|
||||
a
|
||||
<EFBFBD>
|
||||
set CHARACTER SET cp1251_koi8;
|
||||
select * from t1;
|
||||
a
|
||||
<EFBFBD>
|
||||
set CHARACTER SET DEFAULT;
|
||||
show status like "Qcache_queries_in_cache";
|
||||
Variable_name Value
|
||||
Qcache_queries_in_cache 2
|
||||
drop table t1;
|
||||
|
@ -1 +1 @@
|
||||
--set-variable=query_cache_size=1M
|
||||
--set-variable=query_cache_size=1355776
|
||||
|
@ -8,7 +8,7 @@ flush query cache; # This crashed in some versions
|
||||
flush query cache; # This crashed in some versions
|
||||
reset query cache;
|
||||
flush status;
|
||||
drop table if exists t1,t2,t3;
|
||||
drop table if exists t1,t2,t3,t11,t21;
|
||||
|
||||
#
|
||||
# First simple test
|
||||
@ -86,6 +86,53 @@ show status like "Qcache_free_blocks";
|
||||
flush query cache;
|
||||
show status like "Qcache_free_blocks";
|
||||
drop table t1, t2;
|
||||
# With join results...
|
||||
create table t1 (a text not null);
|
||||
create table t11 (a text not null);
|
||||
create table t2 (a text not null);
|
||||
create table t21 (a text not null);
|
||||
create table t3 (a text not null);
|
||||
insert into t1 values("1111111111111111111111111111111111111111111111111111");
|
||||
insert into t11 select * from t1;
|
||||
insert into t21 select * from t1;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
#results of t3 must be > 0.5Mb
|
||||
insert into t3 select * from t1;
|
||||
insert into t3 select * from t2;
|
||||
insert into t3 select * from t1;
|
||||
disable_result_log;
|
||||
select * from t11;
|
||||
select * from t21;
|
||||
enable_result_log;
|
||||
show status like "Qcache_total_blocks";
|
||||
show status like "Qcache_free_blocks";
|
||||
disable_result_log;
|
||||
insert into t11 values("");
|
||||
select * from t3;
|
||||
enable_result_log;
|
||||
show status like "Qcache_total_blocks";
|
||||
show status like "Qcache_free_blocks";
|
||||
flush query cache;
|
||||
show status like "Qcache_total_blocks";
|
||||
show status like "Qcache_free_blocks";
|
||||
drop table t1, t2, t3, t11, t21;
|
||||
#
|
||||
# SELECT SQL_CACHE ...
|
||||
#
|
||||
@ -154,7 +201,6 @@ insert into t2 select * from t1; # 987
|
||||
insert into t1 select * from t2; # 1597
|
||||
insert into t2 select * from t1; # 2584
|
||||
insert into t1 select * from t2; # 4181
|
||||
drop table t2;
|
||||
|
||||
show status like "Qcache_hits";
|
||||
disable_result_log;
|
||||
@ -167,6 +213,50 @@ enable_result_log;
|
||||
show status like "Qcache_hits";
|
||||
show status like "Qcache_queries_in_cache";
|
||||
reset query cache;
|
||||
#
|
||||
# Query bigger then query_cache_limit
|
||||
#
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
insert into t2 select * from t1;
|
||||
insert into t1 select * from t2;
|
||||
disable_result_log;
|
||||
select * from t1;
|
||||
enable_result_log;
|
||||
show status like "Qcache_queries_in_cache";
|
||||
drop table t1,t2;
|
||||
|
||||
#
|
||||
# noncachable ODBC work around (and prepare cache for drop database)
|
||||
#
|
||||
create database foo;
|
||||
create table foo.t1 (i int not null auto_increment, a int, primary key (i));
|
||||
insert into foo.t1 (a) values (1);
|
||||
select * from foo.t1 where i is null;
|
||||
|
||||
#
|
||||
# drop db
|
||||
#
|
||||
select * from foo.t1;
|
||||
show status like "Qcache_queries_in_cache";
|
||||
drop database foo;
|
||||
show status like "Qcache_queries_in_cache";
|
||||
#
|
||||
# Charset convertion (cp1251_koi8 always present)
|
||||
#
|
||||
create table t1 (a char(1) not null);
|
||||
insert into t1 values("<22>");
|
||||
select * from t1;
|
||||
set CHARACTER SET cp1251_koi8;
|
||||
select * from t1;
|
||||
set CHARACTER SET DEFAULT;
|
||||
show status like "Qcache_queries_in_cache";
|
||||
drop table t1;
|
||||
|
||||
# The following tests can't be done as the values differen on 32 and 64 bit
|
||||
|
Reference in New Issue
Block a user