# Tests for PERFORMANCE_SCHEMA

# This test verifies that performance schema tables, because they contain
# data that is volatile, are never cached in the query cache.

--source include/have_query_cache.inc
--source include/not_embedded.inc
--source include/have_perfschema.inc

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

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

SET GLOBAL query_cache_size=1355776;

flush query cache;
reset query cache;
flush status;

select * from t1;

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

select * from t1;

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

select spins from performance_schema.events_waits_current order by event_name limit 1;

--replace_result CYCLE {CYCLE_OR_NANOSECOND} NANOSECOND {CYCLE_OR_NANOSECOND}
select * from performance_schema.setup_timers where name='wait';

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

select spins from performance_schema.events_waits_current order by event_name limit 1;

--replace_result CYCLE {CYCLE_OR_NANOSECOND} NANOSECOND {CYCLE_OR_NANOSECOND}
select * from performance_schema.setup_timers where name='wait';

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

SET GLOBAL query_cache_size= default;

drop table t1;
flush status;

