mirror of
https://github.com/MariaDB/server.git
synced 2025-05-13 01:01:44 +03:00
Before this fix, the test myisam_file_io executed: - (a) an update on setup_instrument to disable non myisam file io instruments - (b) a truncate on events_waits_history_long and later - (c) a select on events_waits_history_long Surprisingly, events that were supposed to be disabled in (a) and removed in (b) still were found in (c). This happened for events such as wait/io/file/innodb/innodb_data_file fil0fil.c: sync because the sync was started before (a) and completed after (b), and as a consequence was added in the performance schema history, as expected. Presence of these records in the history made the test fail. This fix makes the test script more robust to account for extra spill waits records in (c).
62 lines
3.0 KiB
Plaintext
62 lines
3.0 KiB
Plaintext
update performance_schema.setup_instruments set enabled='NO';
|
|
update performance_schema.setup_instruments set enabled='YES'
|
|
where name like "wait/io/file/myisam/%";
|
|
update performance_schema.setup_consumers
|
|
set enabled='YES';
|
|
truncate table performance_schema.events_waits_history_long;
|
|
flush status;
|
|
drop table if exists test.no_index_tab;
|
|
create table test.no_index_tab ( a varchar(255), b int ) engine=myisam;
|
|
insert into no_index_tab set a = 'foo', b = 1;
|
|
insert into no_index_tab set a = 'foo', b = 1;
|
|
insert into no_index_tab set a = 'foo', b = 1;
|
|
select event_name,
|
|
left(source, locate(":", source)) as short_source,
|
|
operation, number_of_bytes,
|
|
substring(object_name, locate("no_index_tab", object_name)) as short_name
|
|
from performance_schema.events_waits_history_long
|
|
where operation not like "tell"
|
|
and event_name like "wait/io/file/myisam/%"
|
|
order by thread_id, event_id;
|
|
event_name short_source operation number_of_bytes short_name
|
|
wait/io/file/myisam/kfile mi_create.c: create NULL no_index_tab.MYI
|
|
wait/io/file/myisam/dfile mi_create.c: create NULL no_index_tab.MYD
|
|
wait/io/file/myisam/kfile mi_open.c: write 176 no_index_tab.MYI
|
|
wait/io/file/myisam/kfile mi_open.c: write 100 no_index_tab.MYI
|
|
wait/io/file/myisam/kfile mi_open.c: write 7 no_index_tab.MYI
|
|
wait/io/file/myisam/kfile mi_open.c: write 7 no_index_tab.MYI
|
|
wait/io/file/myisam/kfile mi_open.c: write 7 no_index_tab.MYI
|
|
wait/io/file/myisam/kfile mi_create.c: chsize 1024 no_index_tab.MYI
|
|
wait/io/file/myisam/dfile mi_create.c: close NULL no_index_tab.MYD
|
|
wait/io/file/myisam/kfile mi_create.c: close NULL no_index_tab.MYI
|
|
wait/io/file/myisam/kfile mi_open.c: open NULL no_index_tab.MYI
|
|
wait/io/file/myisam/kfile mi_open.c: read 24 no_index_tab.MYI
|
|
wait/io/file/myisam/kfile mi_open.c: seek NULL no_index_tab.MYI
|
|
wait/io/file/myisam/kfile mi_open.c: read 297 no_index_tab.MYI
|
|
wait/io/file/myisam/dfile mi_open.c: open NULL no_index_tab.MYD
|
|
wait/io/file/myisam/kfile mi_locking.c: write 3 no_index_tab.MYI
|
|
wait/io/file/myisam/dfile mi_dynrec.c: write 20 no_index_tab.MYD
|
|
wait/io/file/myisam/kfile mi_open.c: write 124 no_index_tab.MYI
|
|
wait/io/file/myisam/dfile mi_dynrec.c: write 20 no_index_tab.MYD
|
|
wait/io/file/myisam/kfile mi_open.c: write 124 no_index_tab.MYI
|
|
wait/io/file/myisam/dfile mi_dynrec.c: write 20 no_index_tab.MYD
|
|
wait/io/file/myisam/kfile mi_open.c: write 124 no_index_tab.MYI
|
|
show status like 'performance_schema_%';
|
|
Variable_name Value
|
|
Performance_schema_cond_classes_lost 0
|
|
Performance_schema_cond_instances_lost 0
|
|
Performance_schema_file_classes_lost 0
|
|
Performance_schema_file_handles_lost 0
|
|
Performance_schema_file_instances_lost 0
|
|
Performance_schema_locker_lost 0
|
|
Performance_schema_mutex_classes_lost 0
|
|
Performance_schema_mutex_instances_lost 0
|
|
Performance_schema_rwlock_classes_lost 0
|
|
Performance_schema_rwlock_instances_lost 0
|
|
Performance_schema_table_handles_lost 0
|
|
Performance_schema_table_instances_lost 0
|
|
Performance_schema_thread_classes_lost 0
|
|
Performance_schema_thread_instances_lost 0
|
|
update performance_schema.setup_instruments set enabled='YES';
|
|
drop table test.no_index_tab;
|