select * from mysql.table_stats;
select * from mysql.index_stats;
#
# Test for parallel memory allocation for statistical data
#
# assumes that start the code of memory allocation for stats data has this line:
#
# DEBUG_SYNC(thd, "statistics_mem_alloc_start1");
# DEBUG_SYNC(thd, "statistics_mem_alloc_start2");
#
let $Q6=
select round(sum(l_extendedprice*l_discount),4) as revenue
from lineitem
where l_shipdate >= date '1994-01-01' and l_shipdate < date '1994-01-01' + interval '1' year and l_discount between 0.06 - 0.01and0.06 + 0.01 and l_quantity < 24;
flush table lineitem; set use_stat_tables='never';
eval $Q6;
connection con1; set debug_sync='statistics_mem_alloc_start1 WAIT_FOR second_thread_started_too'; set debug_sync='statistics_mem_alloc_start2 SIGNAL first_thread_working';
use dbt3_s001; set use_stat_tables='preferably';
--send_eval $Q6
connection con2; set debug_sync='statistics_mem_alloc_start1 SIGNAL second_thread_started_too'; set debug_sync='statistics_mem_alloc_start2 WAIT_FOR first_thread_working';
use dbt3_s001; set use_stat_tables='preferably';
--send_eval $Q6
connection con1;
--reap
connection con2;
--reap
connection default; set use_stat_tables='preferably';
disconnect con1;
disconnect con2; set debug_sync='RESET';
#
# Test for parallel statistics collection
#
# assumes that start of stats collection code has this line:
#
# DEBUG_SYNC(thd, "statistics_collection_start1");
# DEBUG_SYNC(thd, "statistics_collection_start2");
#
select * from mysql.index_stats where table_name='lineitem' order by index_name;
delete from mysql.index_stats
where table_name='lineitem'and
index_name in ('i_l_shipdate', 'i_l_receiptdate');
select * from mysql.index_stats where table_name='lineitem' order by index_name;
--disable_result_log
--disable_warnings
analyze table lineitem persistent for columns() indexes (i_l_shipdate);
--enable_warnings
--enable_result_log
select * from mysql.index_stats where table_name='lineitem' order by index_name;
delete from mysql.index_stats
where table_name='lineitem'and index_name= 'i_l_shipdate';
select * from mysql.index_stats where table_name='lineitem' order by index_name;
connection con1; set debug_sync='statistics_collection_start1 WAIT_FOR second_thread_started_too'; set debug_sync='statistics_collection_start2 SIGNAL first_thread_working';
use dbt3_s001; set use_stat_tables='preferably';
--send analyze table lineitem persistent for columns() indexes (i_l_shipdate)
connection con2; set debug_sync='statistics_collection_start1 SIGNAL second_thread_started_too'; set debug_sync='statistics_collection_start2 WAIT_FOR first_thread_working';
use dbt3_s001; set use_stat_tables='preferably';
--send analyze table lineitem persistent for columns() indexes (i_l_receiptdate)
connection con1; set debug_sync='statistics_collection_start SIGNAL parked WAIT_FOR finish';
use dbt3_s001; set use_stat_tables='preferably';
--send analyze table lineitem persistent for all
connection con2; set debug_sync='now WAIT_FOR parked';
use dbt3_s001; set use_stat_tables='never'; if ($innodb_storage_engine)
{
select * from lineitem where l_orderkey=1and l_partkey=156;
delete from lineitem where l_orderkey=1and l_partkey=156;
select * from lineitem where l_orderkey=1and l_partkey=156;
} set debug_sync='now SIGNAL finish';
connection con1; set debug_sync='statistics_update_start SIGNAL parker WAIT_FOR go1 EXECUTE 1'; set debug_sync='thr_multi_lock_before_thr_lock SIGNAL go2 EXECUTE 3';
use dbt3_s001;
--send analyze table lineitem persistent for all
connection con2; set debug_sync='open_and_process_table WAIT_FOR parker'; set debug_sync='statistics_read_start SIGNAL go1 WAIT_FOR go2';
use dbt3_s001;
--send select * from mysql.index_stats, lineitem where index_name= 'i_l_shipdate'and l_orderkey=1and l_partkey=68 order by prefix_arity;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.