-- source include/have_query_cache.inc

#
# Tests with query cache
#

# Reset query cache variables.

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 t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27,t28,t29,t30,t31,t32,t33,t34,t35,t36,t37,t38,t39,t40,t41,t42,t43,t44,t45,t46,t47,t48,t49,t50,t51,t52,t53,t54,t55,t56,t57,t58,t59,t60,t61,t62,t63,t64,t65,t66,t67,t68,t69,t70,t71,t72,t73,t74,t75,t76,t77,t78,t79,t80,t81,t82,t83,t84,t85,t86,t87,t88,t89,t90,t91,t92,t93,t94,t95,t96,t97,t98,t99,t100,t101,t102,t103,t104,t105,t106,t107,t108,t109,t110,t111,t112,t113,t114,t115,t116,t117,t118,t119,t120,t121,t122,t123,t124,t125,t126,t127,t128,t129,t130,t131,t132,t133,t134,t135,t136,t137,t138,t139,t140,t141,t142,t143,t144,t145,t146,t147,t148,t149,t150,t151,t152,t153,t154,t155,t156,t157,t158,t159,t160,t161,t162,t163,t164,t165,t166,t167,t168,t169,t170,t171,t172,t173,t174,t175,t176,t177,t178,t179,t180,t181,t182,t183,t184,t185,t186,t187,t188,t189,t190,t191,t192,t193,t194,t195,t196,t197,t198,t199,t200,t201,t202,t203,t204,t205,t206,t207,t208,t209,t210,t211,t212,t213,t214,t215,t216,t217,t218,t219,t220,t221,t222,t223,t224,t225,t226,t227,t228,t229,t230,t231,t232,t233,t234,t235,t236,t237,t238,t239,t240,t241,t242,t243,t244,t245,t246,t247,t248,t249,t250,t251,t252,t253,t254,t255,t256,t00,mysqltest.t1;
drop database if exists mysqltest;

#
# First simple test
#

create table t1 (a int not null);
insert into t1 values (1),(2),(3);
select * from t1;
select * from t1;
select sql_no_cache * from t1;
select length(now()) from t1;

# Only check the variables that are independent of the machine and startup
# options

show status like "Qcache_queries_in_cache";
show status like "Qcache_inserts";
show status like "Qcache_hits";

drop table t1;

show status like "Qcache_queries_in_cache";

#
# MERGE TABLES with INSERT/UPDATE and DELETE
#
create table t1 (a int not null);
insert into t1 values (1),(2),(3);
create table t2 (a int not null);
insert into t2 values (4),(5),(6);
create table t3 (a int not null) type=MERGE UNION=(t1,t2) INSERT_METHOD=FIRST;
# insert
select * from t3;
select * from t3;
show status like "Qcache_hits";
show status like "Qcache_queries_in_cache";
insert into t2  values (7);
show status like "Qcache_queries_in_cache";
select * from t1;
select * from t1;
show status like "Qcache_hits";
show status like "Qcache_queries_in_cache";
insert into t3 values (8);
show status like "Qcache_queries_in_cache";
# update
select * from t3;
show status like "Qcache_queries_in_cache";
update t2 set a=9 where a=7;
show status like "Qcache_queries_in_cache";
select * from t1;
show status like "Qcache_queries_in_cache";
update t3 set a=10 where a=1;
show status like "Qcache_queries_in_cache";
#delete
select * from t3;
show status like "Qcache_queries_in_cache";
delete from t2 where a=9;
show status like "Qcache_queries_in_cache";
select * from t1;
show status like "Qcache_queries_in_cache";
delete from t3 where a=10;
show status like "Qcache_queries_in_cache";
drop table t1, t2, t3;
#
# FLUSH QUERY CACHE
#
create table t1 (a int not null);
insert into t1 values (1),(2),(3);
create table t2 (a int not null);
insert into t2 values (1),(2),(3);
select * from t1;
select * from t2;
insert into t1 values (4);
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 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;
# t11 and t21 must be over 4Kb (QUERY_CACHE_MIN_RESULT_DATA_SIZE)
insert into t11 select * from t1;
insert into t21 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 ...
#
set query_cache_type=demand;
create table t1 (a int not null);
insert into t1 values (1),(2),(3);
select * from t1;
show status like "Qcache_queries_in_cache";
select sql_cache * from t1 union select * from t1;
set query_cache_type=2;
select sql_cache * from t1 union select * from t1;
select * from t1 union select sql_cache * from t1;
show status like "Qcache_hits";
show status like "Qcache_queries_in_cache";
set query_cache_type=on;
#
# RESET QUERY CACHE
#
reset query cache;
show status like "Qcache_queries_in_cache";
#
# SELECT SQL_NO_CACHE
#
select sql_no_cache * from t1;
show status like "Qcache_queries_in_cache";
drop table t1;
#
# Check that queries that uses NOW(), LAST_INSERT_ID()... are not cached.
#
create table t1 (a text not null);
select CONNECTION_ID() from t1;
#GET_LOCK
#RELEASE_LOCK
#LOAD_FILE
select FOUND_ROWS();
select NOW() from t1;
select CURDATE() from t1;
select CURTIME() from t1;
select DATABASE() from t1;
select ENCRYPT("test") from t1;
select LAST_INSERT_ID() from t1;
select RAND() from t1;
select UNIX_TIMESTAMP() from t1;
select USER() from t1;
select benchmark(1,1) from t1;
show status like "Qcache_queries_in_cache";
#
# Tests when the cache is filled
#
create table t2 (a text not null);
insert into t1 values("1111111111111111111111111111111111111111111111111111");
insert into t2 select * from t1;
insert into t1 select * from t2; # 2
insert into t2 select * from t1; # 3
insert into t1 select * from t2; # 5
insert into t2 select * from t1; # 8
insert into t1 select * from t2; # 13
insert into t2 select * from t1; # 21
insert into t1 select * from t2; # 34
insert into t2 select * from t1; # 55
insert into t1 select * from t2; # 89
insert into t2 select * from t1; # 144
insert into t1 select * from t2; # 233
insert into t2 select * from t1; # 357
insert into t1 select * from t2; # 610
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

show status like "Qcache_hits";
show status like "Qcache_lowmem_prunes";
disable_result_log;
select a as a1, a as a2 from t1;
select a as a2, a as a3 from t1;
select a as a3, a as a4 from t1;
# next query must be out of 1Mb cache
select a as a1, a as a2 from t1;
enable_result_log;
show status like "Qcache_hits";
show status like "Qcache_queries_in_cache";
show status like "Qcache_lowmem_prunes";
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 mysqltest;
create table mysqltest.t1 (i int not null auto_increment, a int, primary key (i));
insert into mysqltest.t1 (a) values (1);
select * from mysqltest.t1 where i is null;

#
# drop db
#
select * from mysqltest.t1;
show status like "Qcache_queries_in_cache";
drop database mysqltest;
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("�");
select * from t1;
set CHARACTER SET cp1251_koi8;
select * from t1;
set CHARACTER SET DEFAULT;
show status like "Qcache_queries_in_cache";
show status like "Qcache_hits";
drop table t1;

# The following tests can't be done as the values differen on 32 and 64 bit
#  machines :(
#show variables like "query_cache_size";
#show status like "Qcache_free_memory";

#
# same tables in different db
#
create database if not exists mysqltest;
create table mysqltest.t1 (i int not null);
create table t1 (i int not null);
insert into mysqltest.t1 (i) values (1);
insert into t1 (i) values (2);

select * from t1;
use mysqltest;
select * from t1;
select * from t1;
use test;
select * from t1;
show status like "Qcache_queries_in_cache";
show status like "Qcache_hits";

drop database mysqltest;
drop table t1;

#
# FOUND_ROWS()
#

create table t1 (i int not null);
insert into t1 (i) values (1),(2),(3),(4);

select SQL_CALC_FOUND_ROWS * from t1 limit 2;
select FOUND_ROWS();
show status like "Qcache_hits";
show status like "Qcache_queries_in_cache";

select * from t1 where i=1;
select FOUND_ROWS();
show status like "Qcache_hits";
show status like "Qcache_queries_in_cache";

select SQL_CALC_FOUND_ROWS * from t1 limit 2;
select FOUND_ROWS();
show status like "Qcache_hits";
show status like "Qcache_queries_in_cache";

select * from t1 where i=1;
select FOUND_ROWS();
show status like "Qcache_hits";
show status like "Qcache_queries_in_cache";
drop table t1;

#
# Test insert delayed
#

flush query cache;
reset query cache;

create table t1 (a int not null);
insert into t1 values (1),(2),(3);
select * from t1;
select * from t1;
show status like "Qcache_queries_in_cache";
insert delayed into t1 values (4);
--sleep 5	# Wait for insert delayed to be executed.
select a from t1;
show status like "Qcache_queries_in_cache";
drop table t1;
show status like "Qcache_queries_in_cache";

#
# Test of query cache resizing
#
create table t1 (a int);
set GLOBAL query_cache_size=1000;
show global variables like "query_cache_size";
select * from t1;
set GLOBAL query_cache_size=1024;
show global variables like "query_cache_size";
select * from t1;
set GLOBAL query_cache_size=10240;
show global variables like "query_cache_size";
select * from t1;
set GLOBAL query_cache_size=20480;
show global variables like "query_cache_size";
select * from t1;
set GLOBAL query_cache_size=40960;
show global variables like "query_cache_size";
select * from t1;
set GLOBAL query_cache_size=51200;
show global variables like "query_cache_size";
select * from t1;
set GLOBAL query_cache_size=61440;
show global variables like "query_cache_size";
select * from t1;
set GLOBAL query_cache_size=81920;
show global variables like "query_cache_size";
select * from t1;
set GLOBAL query_cache_size=102400;
show global variables like "query_cache_size";
select * from t1;
drop table t1;

#
# Temporary tables
#
set GLOBAL query_cache_size=1048576;
create table t1 (i int not null);
create table t2 (i int not null);
select * from t1;
show status like "Qcache_queries_in_cache";
create temporary table t3 (i int not null);
select * from t2;
show status like "Qcache_queries_in_cache";
select * from t3;
show status like "Qcache_queries_in_cache";
drop table t1, t2, t3;

#
# system databse test
#
use mysql;
disable_result_log;
select * from db;
enable_result_log;
show status like "Qcache_queries_in_cache";
use test;
disable_result_log;
select * from mysql.db;
enable_result_log;
show status like "Qcache_queries_in_cache";

#
# simple rename test
#
create table t1(id int auto_increment primary key);
insert into t1 values (NULL), (NULL), (NULL);
select * from t1 where id=2;
alter table t1 rename to t2;
-- error 1146
select * from t1 where id=2;
drop table t2;
-- error 1146
select * from t1 where id=2;

#
# Load data invalidation test
#
create table t1 (word char(20) not null);
select * from t1;
show status like "Qcache_queries_in_cache";
load data infile '../../std_data/words.dat' into table t1;
show status like "Qcache_queries_in_cache";
drop table t1;

#
# INTO OUTFILE/DUMPFILE test
#
drop table if exists t1;
create table t1 (a int);
insert into t1 values (1),(2),(3);
show status like "Qcache_queries_in_cache";
select * from t1 into outfile "query_caceh.out.file";
select * from t1 limit 1 into dumpfile "query_cache.dump.file";
show status like "Qcache_queries_in_cache";
drop table t1;

#
# test of SQL_SELECT_LIMIT
#
create table t1 (a int);
insert into t1 values (1),(2);
show status like "Qcache_queries_in_cache";
select * from t1;
SET OPTION SQL_SELECT_LIMIT=1;
select * from t1;
show status like "Qcache_queries_in_cache";
SET OPTION SQL_SELECT_LIMIT=DEFAULT;
drop table t1;

#
# more then 255 (257) merged tables test
#
flush status;
create table t0(a int);
create table t1(a int);
create table t2(a int);
create table t3(a int);
create table t4(a int);
create table t5(a int);
create table t6(a int);
create table t7(a int);
create table t8(a int);
create table t9(a int);
create table t10(a int);
create table t11(a int);
create table t12(a int);
create table t13(a int);
create table t14(a int);
create table t15(a int);
create table t16(a int);
create table t17(a int);
create table t18(a int);
create table t19(a int);
create table t20(a int);
create table t21(a int);
create table t22(a int);
create table t23(a int);
create table t24(a int);
create table t25(a int);
create table t26(a int);
create table t27(a int);
create table t28(a int);
create table t29(a int);
create table t30(a int);
create table t31(a int);
create table t32(a int);
create table t33(a int);
create table t34(a int);
create table t35(a int);
create table t36(a int);
create table t37(a int);
create table t38(a int);
create table t39(a int);
create table t40(a int);
create table t41(a int);
create table t42(a int);
create table t43(a int);
create table t44(a int);
create table t45(a int);
create table t46(a int);
create table t47(a int);
create table t48(a int);
create table t49(a int);
create table t50(a int);
create table t51(a int);
create table t52(a int);
create table t53(a int);
create table t54(a int);
create table t55(a int);
create table t56(a int);
create table t57(a int);
create table t58(a int);
create table t59(a int);
create table t60(a int);
create table t61(a int);
create table t62(a int);
create table t63(a int);
create table t64(a int);
create table t65(a int);
create table t66(a int);
create table t67(a int);
create table t68(a int);
create table t69(a int);
create table t70(a int);
create table t71(a int);
create table t72(a int);
create table t73(a int);
create table t74(a int);
create table t75(a int);
create table t76(a int);
create table t77(a int);
create table t78(a int);
create table t79(a int);
create table t80(a int);
create table t81(a int);
create table t82(a int);
create table t83(a int);
create table t84(a int);
create table t85(a int);
create table t86(a int);
create table t87(a int);
create table t88(a int);
create table t89(a int);
create table t90(a int);
create table t91(a int);
create table t92(a int);
create table t93(a int);
create table t94(a int);
create table t95(a int);
create table t96(a int);
create table t97(a int);
create table t98(a int);
create table t99(a int);
create table t100(a int);
create table t101(a int);
create table t102(a int);
create table t103(a int);
create table t104(a int);
create table t105(a int);
create table t106(a int);
create table t107(a int);
create table t108(a int);
create table t109(a int);
create table t110(a int);
create table t111(a int);
create table t112(a int);
create table t113(a int);
create table t114(a int);
create table t115(a int);
create table t116(a int);
create table t117(a int);
create table t118(a int);
create table t119(a int);
create table t120(a int);
create table t121(a int);
create table t122(a int);
create table t123(a int);
create table t124(a int);
create table t125(a int);
create table t126(a int);
create table t127(a int);
create table t128(a int);
create table t129(a int);
create table t130(a int);
create table t131(a int);
create table t132(a int);
create table t133(a int);
create table t134(a int);
create table t135(a int);
create table t136(a int);
create table t137(a int);
create table t138(a int);
create table t139(a int);
create table t140(a int);
create table t141(a int);
create table t142(a int);
create table t143(a int);
create table t144(a int);
create table t145(a int);
create table t146(a int);
create table t147(a int);
create table t148(a int);
create table t149(a int);
create table t150(a int);
create table t151(a int);
create table t152(a int);
create table t153(a int);
create table t154(a int);
create table t155(a int);
create table t156(a int);
create table t157(a int);
create table t158(a int);
create table t159(a int);
create table t160(a int);
create table t161(a int);
create table t162(a int);
create table t163(a int);
create table t164(a int);
create table t165(a int);
create table t166(a int);
create table t167(a int);
create table t168(a int);
create table t169(a int);
create table t170(a int);
create table t171(a int);
create table t172(a int);
create table t173(a int);
create table t174(a int);
create table t175(a int);
create table t176(a int);
create table t177(a int);
create table t178(a int);
create table t179(a int);
create table t180(a int);
create table t181(a int);
create table t182(a int);
create table t183(a int);
create table t184(a int);
create table t185(a int);
create table t186(a int);
create table t187(a int);
create table t188(a int);
create table t189(a int);
create table t190(a int);
create table t191(a int);
create table t192(a int);
create table t193(a int);
create table t194(a int);
create table t195(a int);
create table t196(a int);
create table t197(a int);
create table t198(a int);
create table t199(a int);
create table t200(a int);
create table t201(a int);
create table t202(a int);
create table t203(a int);
create table t204(a int);
create table t205(a int);
create table t206(a int);
create table t207(a int);
create table t208(a int);
create table t209(a int);
create table t210(a int);
create table t211(a int);
create table t212(a int);
create table t213(a int);
create table t214(a int);
create table t215(a int);
create table t216(a int);
create table t217(a int);
create table t218(a int);
create table t219(a int);
create table t220(a int);
create table t221(a int);
create table t222(a int);
create table t223(a int);
create table t224(a int);
create table t225(a int);
create table t226(a int);
create table t227(a int);
create table t228(a int);
create table t229(a int);
create table t230(a int);
create table t231(a int);
create table t232(a int);
create table t233(a int);
create table t234(a int);
create table t235(a int);
create table t236(a int);
create table t237(a int);
create table t238(a int);
create table t239(a int);
create table t240(a int);
create table t241(a int);
create table t242(a int);
create table t243(a int);
create table t244(a int);
create table t245(a int);
create table t246(a int);
create table t247(a int);
create table t248(a int);
create table t249(a int);
create table t250(a int);
create table t251(a int);
create table t252(a int);
create table t253(a int);
create table t254(a int);
create table t255(a int);
create table t256(a int);
create table t00 (a int) type=MERGE UNION=(t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27,t28,t29,t30,t31,t32,t33,t34,t35,t36,t37,t38,t39,t40,t41,t42,t43,t44,t45,t46,t47,t48,t49,t50,t51,t52,t53,t54,t55,t56,t57,t58,t59,t60,t61,t62,t63,t64,t65,t66,t67,t68,t69,t70,t71,t72,t73,t74,t75,t76,t77,t78,t79,t80,t81,t82,t83,t84,t85,t86,t87,t88,t89,t90,t91,t92,t93,t94,t95,t96,t97,t98,t99,t100,t101,t102,t103,t104,t105,t106,t107,t108,t109,t110,t111,t112,t113,t114,t115,t116,t117,t118,t119,t120,t121,t122,t123,t124,t125,t126,t127,t128,t129,t130,t131,t132,t133,t134,t135,t136,t137,t138,t139,t140,t141,t142,t143,t144,t145,t146,t147,t148,t149,t150,t151,t152,t153,t154,t155,t156,t157,t158,t159,t160,t161,t162,t163,t164,t165,t166,t167,t168,t169,t170,t171,t172,t173,t174,t175,t176,t177,t178,t179,t180,t181,t182,t183,t184,t185,t186,t187,t188,t189,t190,t191,t192,t193,t194,t195,t196,t197,t198,t199,t200,t201,t202,t203,t204,t205,t206,t207,t208,t209,t210,t211,t212,t213,t214,t215,t216,t217,t218,t219,t220,t221,t222,t223,t224,t225,t226,t227,t228,t229,t230,t231,t232,t233,t234,t235,t236,t237,t238,t239,t240,t241,t242,t243,t244,t245,t246,t247,t248,t249,t250,t251,t252,t253,t254,t255,t256) INSERT_METHOD=FIRST;
insert into t0 values (1),(2);
insert into t1 values (1),(2);
insert into t2 values (1),(2);
insert into t3 values (1),(2);
insert into t4 values (1),(2);
insert into t5 values (1),(2);
insert into t6 values (1),(2);
insert into t7 values (1),(2);
insert into t8 values (1),(2);
insert into t9 values (1),(2);
insert into t10 values (1),(2);
insert into t11 values (1),(2);
insert into t12 values (1),(2);
insert into t13 values (1),(2);
insert into t14 values (1),(2);
insert into t15 values (1),(2);
insert into t16 values (1),(2);
insert into t17 values (1),(2);
insert into t18 values (1),(2);
insert into t19 values (1),(2);
insert into t20 values (1),(2);
insert into t21 values (1),(2);
insert into t22 values (1),(2);
insert into t23 values (1),(2);
insert into t24 values (1),(2);
insert into t25 values (1),(2);
insert into t26 values (1),(2);
insert into t27 values (1),(2);
insert into t28 values (1),(2);
insert into t29 values (1),(2);
insert into t30 values (1),(2);
insert into t31 values (1),(2);
insert into t32 values (1),(2);
insert into t33 values (1),(2);
insert into t34 values (1),(2);
insert into t35 values (1),(2);
insert into t36 values (1),(2);
insert into t37 values (1),(2);
insert into t38 values (1),(2);
insert into t39 values (1),(2);
insert into t40 values (1),(2);
insert into t41 values (1),(2);
insert into t42 values (1),(2);
insert into t43 values (1),(2);
insert into t44 values (1),(2);
insert into t45 values (1),(2);
insert into t46 values (1),(2);
insert into t47 values (1),(2);
insert into t48 values (1),(2);
insert into t49 values (1),(2);
insert into t50 values (1),(2);
insert into t51 values (1),(2);
insert into t52 values (1),(2);
insert into t53 values (1),(2);
insert into t54 values (1),(2);
insert into t55 values (1),(2);
insert into t56 values (1),(2);
insert into t57 values (1),(2);
insert into t58 values (1),(2);
insert into t59 values (1),(2);
insert into t60 values (1),(2);
insert into t61 values (1),(2);
insert into t62 values (1),(2);
insert into t63 values (1),(2);
insert into t64 values (1),(2);
insert into t65 values (1),(2);
insert into t66 values (1),(2);
insert into t67 values (1),(2);
insert into t68 values (1),(2);
insert into t69 values (1),(2);
insert into t70 values (1),(2);
insert into t71 values (1),(2);
insert into t72 values (1),(2);
insert into t73 values (1),(2);
insert into t74 values (1),(2);
insert into t75 values (1),(2);
insert into t76 values (1),(2);
insert into t77 values (1),(2);
insert into t78 values (1),(2);
insert into t79 values (1),(2);
insert into t80 values (1),(2);
insert into t81 values (1),(2);
insert into t82 values (1),(2);
insert into t83 values (1),(2);
insert into t84 values (1),(2);
insert into t85 values (1),(2);
insert into t86 values (1),(2);
insert into t87 values (1),(2);
insert into t88 values (1),(2);
insert into t89 values (1),(2);
insert into t90 values (1),(2);
insert into t91 values (1),(2);
insert into t92 values (1),(2);
insert into t93 values (1),(2);
insert into t94 values (1),(2);
insert into t95 values (1),(2);
insert into t96 values (1),(2);
insert into t97 values (1),(2);
insert into t98 values (1),(2);
insert into t99 values (1),(2);
insert into t100 values (1),(2);
insert into t101 values (1),(2);
insert into t102 values (1),(2);
insert into t103 values (1),(2);
insert into t104 values (1),(2);
insert into t105 values (1),(2);
insert into t106 values (1),(2);
insert into t107 values (1),(2);
insert into t108 values (1),(2);
insert into t109 values (1),(2);
insert into t110 values (1),(2);
insert into t111 values (1),(2);
insert into t112 values (1),(2);
insert into t113 values (1),(2);
insert into t114 values (1),(2);
insert into t115 values (1),(2);
insert into t116 values (1),(2);
insert into t117 values (1),(2);
insert into t118 values (1),(2);
insert into t119 values (1),(2);
insert into t120 values (1),(2);
insert into t121 values (1),(2);
insert into t122 values (1),(2);
insert into t123 values (1),(2);
insert into t124 values (1),(2);
insert into t125 values (1),(2);
insert into t126 values (1),(2);
insert into t127 values (1),(2);
insert into t128 values (1),(2);
insert into t129 values (1),(2);
insert into t130 values (1),(2);
insert into t131 values (1),(2);
insert into t132 values (1),(2);
insert into t133 values (1),(2);
insert into t134 values (1),(2);
insert into t135 values (1),(2);
insert into t136 values (1),(2);
insert into t137 values (1),(2);
insert into t138 values (1),(2);
insert into t139 values (1),(2);
insert into t140 values (1),(2);
insert into t141 values (1),(2);
insert into t142 values (1),(2);
insert into t143 values (1),(2);
insert into t144 values (1),(2);
insert into t145 values (1),(2);
insert into t146 values (1),(2);
insert into t147 values (1),(2);
insert into t148 values (1),(2);
insert into t149 values (1),(2);
insert into t150 values (1),(2);
insert into t151 values (1),(2);
insert into t152 values (1),(2);
insert into t153 values (1),(2);
insert into t154 values (1),(2);
insert into t155 values (1),(2);
insert into t156 values (1),(2);
insert into t157 values (1),(2);
insert into t158 values (1),(2);
insert into t159 values (1),(2);
insert into t160 values (1),(2);
insert into t161 values (1),(2);
insert into t162 values (1),(2);
insert into t163 values (1),(2);
insert into t164 values (1),(2);
insert into t165 values (1),(2);
insert into t166 values (1),(2);
insert into t167 values (1),(2);
insert into t168 values (1),(2);
insert into t169 values (1),(2);
insert into t170 values (1),(2);
insert into t171 values (1),(2);
insert into t172 values (1),(2);
insert into t173 values (1),(2);
insert into t174 values (1),(2);
insert into t175 values (1),(2);
insert into t176 values (1),(2);
insert into t177 values (1),(2);
insert into t178 values (1),(2);
insert into t179 values (1),(2);
insert into t180 values (1),(2);
insert into t181 values (1),(2);
insert into t182 values (1),(2);
insert into t183 values (1),(2);
insert into t184 values (1),(2);
insert into t185 values (1),(2);
insert into t186 values (1),(2);
insert into t187 values (1),(2);
insert into t188 values (1),(2);
insert into t189 values (1),(2);
insert into t190 values (1),(2);
insert into t191 values (1),(2);
insert into t192 values (1),(2);
insert into t193 values (1),(2);
insert into t194 values (1),(2);
insert into t195 values (1),(2);
insert into t196 values (1),(2);
insert into t197 values (1),(2);
insert into t198 values (1),(2);
insert into t199 values (1),(2);
insert into t200 values (1),(2);
insert into t201 values (1),(2);
insert into t202 values (1),(2);
insert into t203 values (1),(2);
insert into t204 values (1),(2);
insert into t205 values (1),(2);
insert into t206 values (1),(2);
insert into t207 values (1),(2);
insert into t208 values (1),(2);
insert into t209 values (1),(2);
insert into t210 values (1),(2);
insert into t211 values (1),(2);
insert into t212 values (1),(2);
insert into t213 values (1),(2);
insert into t214 values (1),(2);
insert into t215 values (1),(2);
insert into t216 values (1),(2);
insert into t217 values (1),(2);
insert into t218 values (1),(2);
insert into t219 values (1),(2);
insert into t220 values (1),(2);
insert into t221 values (1),(2);
insert into t222 values (1),(2);
insert into t223 values (1),(2);
insert into t224 values (1),(2);
insert into t225 values (1),(2);
insert into t226 values (1),(2);
insert into t227 values (1),(2);
insert into t228 values (1),(2);
insert into t229 values (1),(2);
insert into t230 values (1),(2);
insert into t231 values (1),(2);
insert into t232 values (1),(2);
insert into t233 values (1),(2);
insert into t234 values (1),(2);
insert into t235 values (1),(2);
insert into t236 values (1),(2);
insert into t237 values (1),(2);
insert into t238 values (1),(2);
insert into t239 values (1),(2);
insert into t240 values (1),(2);
insert into t241 values (1),(2);
insert into t242 values (1),(2);
insert into t243 values (1),(2);
insert into t244 values (1),(2);
insert into t245 values (1),(2);
insert into t246 values (1),(2);
insert into t247 values (1),(2);
insert into t248 values (1),(2);
insert into t249 values (1),(2);
insert into t250 values (1),(2);
insert into t251 values (1),(2);
insert into t252 values (1),(2);
insert into t253 values (1),(2);
insert into t254 values (1),(2);
insert into t255 values (1),(2);
insert into t256 values (1),(2);
enable_result_log;
select count(*) from t00;
select count(*) from t00;
show status like "Qcache_queries_in_cache";
show status like "Qcache_hits";
delete from t256;
show status like "Qcache_queries_in_cache";
drop table t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27,t28,t29,t30,t31,t32,t33,t34,t35,t36,t37,t38,t39,t40,t41,t42,t43,t44,t45,t46,t47,t48,t49,t50,t51,t52,t53,t54,t55,t56,t57,t58,t59,t60,t61,t62,t63,t64,t65,t66,t67,t68,t69,t70,t71,t72,t73,t74,t75,t76,t77,t78,t79,t80,t81,t82,t83,t84,t85,t86,t87,t88,t89,t90,t91,t92,t93,t94,t95,t96,t97,t98,t99,t100,t101,t102,t103,t104,t105,t106,t107,t108,t109,t110,t111,t112,t113,t114,t115,t116,t117,t118,t119,t120,t121,t122,t123,t124,t125,t126,t127,t128,t129,t130,t131,t132,t133,t134,t135,t136,t137,t138,t139,t140,t141,t142,t143,t144,t145,t146,t147,t148,t149,t150,t151,t152,t153,t154,t155,t156,t157,t158,t159,t160,t161,t162,t163,t164,t165,t166,t167,t168,t169,t170,t171,t172,t173,t174,t175,t176,t177,t178,t179,t180,t181,t182,t183,t184,t185,t186,t187,t188,t189,t190,t191,t192,t193,t194,t195,t196,t197,t198,t199,t200,t201,t202,t203,t204,t205,t206,t207,t208,t209,t210,t211,t212,t213,t214,t215,t216,t217,t218,t219,t220,t221,t222,t223,t224,t225,t226,t227,t228,t229,t230,t231,t232,t233,t234,t235,t236,t237,t238,t239,t240,t241,t242,t243,t244,t245,t246,t247,t248,t249,t250,t251,t252,t253,t254,t255,t256,t00;