Description:
Single-segment items producing empty statistics in InnoDB Status.
5.6.43:
Pending normal aio reads: 0 [0, 0, 0, 0] , aio writes: 0 [0, 0, 0, 0] ,
ibuf aio reads: 0, log i/o's: 0, sync i/o's: 0
8.0.15 and 5.7.25:
Pending normal aio reads: [0, 0, 0, 0] , aio writes: [0, 0, 0, 0] ,
ibuf aio reads:, log i/o's:, sync i/o's:
All 3 items using just a single segment:
static AIO* create(
latch_id_t id,
ulint n_slots,
ulint segments)
s_ibuf = create(LATCH_ID_OS_AIO_IBUF_MUTEX, n_per_seg, 1);
Print happening from the code:
if (s_ibuf != NULL) {
fputs(",\n ibuf aio reads:", file);
s_ibuf->print(file);
}
Print function calls:
print_segment_info(file, n_res_seg);
print_segment_info prints only if m_n_segments > 1
https://github.com/mysql/mysql-server/blob/ca94b993454c86be248fbe180db94647488114e9/storag...
5.6 prints a total number before printing per-segment statistics thus it has a value for single-segment items.
How to repeat:
docker run -it --name p57 -e MYSQL_ROOT_PASSWORD=secret -p 3306:3306 mysql:5.7
docker run -it --name p80 -e MYSQL_ROOT_PASSWORD=secret -p 3306:3306 mysql:8.0
execute SHOW ENGINE INNODB STATUS\G