25.8 События Performance Schema атомарного и молекулярного типов
Для события ввода/вывода таблицы обычно в events_waits_current присутствуют две строки, а не одна. Например, обращение к строке может привести к следующим строкам:
Row# EVENT_NAME TIMER_START TIMER_END
---- ---------- ----------- ---------
1 wait/io/file/myisam/dfile 10001 10002
2 wait/io/table/sql/handler 10000 NULL
Обращение к строке вызывает чтение файла. В примере событие извлечения данных из таблицы началось до события ввода/вывода файла, но не завершилось (его значение TIMER_END равно NULL). Событие ввода/вывода файла “вложено” внутри события обращения к таблице.
Это происходит потому, что, в отличие от других событий ожидания “атомарного” типа, таких как ожидание мьютексов или ввода/вывода файлов, события ввода/вывода таблицы являются “молекулярными” и включают (перекрываются) другими событиями. В events_waits_current событие ввода/вывода таблицы обычно имеет две строки:
Одна строка для последнего события ожидания ввода/вывода таблицы
Одна строка для последнего события ожидания любого типа
Обычно, но не всегда, событие ожидания “любого типа” отличается от события обращения к таблице. По мере завершения каждого дочернего события оно исчезает из events_waits_current. В этот момент, и до начала следующего дочернего события, ожидание ввода/вывода таблицы также является последним событием ожидания любого типа.
© 2025 Oracle
Licensed under the GPLv2 License.