1
0
mirror of https://github.com/MariaDB/server.git synced 2025-05-13 01:01:44 +03:00
mariadb/mysql-test/suite/perfschema/r/myisam_file_io.result
Marc Alff 639b25982b Bug#58512 Performance_schema.myisam_file_io fails sporadically in PB2
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).
2010-12-01 10:24:16 +01:00

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;