Commit b3df257c authored by Jan Lindström's avatar Jan Lindström

MDEV-10469: innodb.innodb-alter-tempfile fails in buildbot: InnoDB: Warning:...

MDEV-10469: innodb.innodb-alter-tempfile fails in buildbot: InnoDB: Warning: database page corruption or a failed

Test case intentionally crashes the server and that could lead partially
written pages that are then restored from doublewrite buffer.
parent b5fb2a68
...@@ -4,6 +4,10 @@ ...@@ -4,6 +4,10 @@
# Temporary tablename will be unique. This makes sure that future # Temporary tablename will be unique. This makes sure that future
# in-place ALTERs of the same table will not be blocked due to # in-place ALTERs of the same table will not be blocked due to
# temporary tablename. # temporary tablename.
call mtr.add_suppression("InnoDB: Warning: database page corruption or a failed
");
call mtr.add_suppression("InnoDB: file read of space .* page .*");
call mtr.add_suppression("InnoDB: Trying to recover it from the doublewrite buffer.");
# Crash the server in ha_innobase::commit_inplace_alter_table() # Crash the server in ha_innobase::commit_inplace_alter_table()
CREATE TABLE t1 (f1 INT NOT NULL, f2 INT NOT NULL) ENGINE=innodb; CREATE TABLE t1 (f1 INT NOT NULL, f2 INT NOT NULL) ENGINE=innodb;
SET debug='d,innodb_alter_commit_crash_before_commit'; SET debug='d,innodb_alter_commit_crash_before_commit';
......
...@@ -20,6 +20,13 @@ ...@@ -20,6 +20,13 @@
--echo # in-place ALTERs of the same table will not be blocked due to --echo # in-place ALTERs of the same table will not be blocked due to
--echo # temporary tablename. --echo # temporary tablename.
# As we intentionally crash below, there could be partially written
# pages that are then recovered from the doublewrite buffer
call mtr.add_suppression("InnoDB: Warning: database page corruption or a failed
");
call mtr.add_suppression("InnoDB: file read of space .* page .*");
call mtr.add_suppression("InnoDB: Trying to recover it from the doublewrite buffer.");
let datadir= `select @@datadir`; let datadir= `select @@datadir`;
--let $_server_id= `SELECT @@server_id` --let $_server_id= `SELECT @@server_id`
......
...@@ -614,7 +614,7 @@ buf_page_is_corrupted( ...@@ -614,7 +614,7 @@ buf_page_is_corrupted(
"InnoDB: " REFMAN "InnoDB: " REFMAN
"forcing-innodb-recovery.html\n" "forcing-innodb-recovery.html\n"
"InnoDB: for more information.\n", "InnoDB: for more information.\n",
(ulong) mach_read_from_4( (ulint) mach_read_from_4(
read_buf + FIL_PAGE_OFFSET), read_buf + FIL_PAGE_OFFSET),
(lsn_t) mach_read_from_8( (lsn_t) mach_read_from_8(
read_buf + FIL_PAGE_LSN), read_buf + FIL_PAGE_LSN),
...@@ -802,7 +802,7 @@ buf_page_print( ...@@ -802,7 +802,7 @@ buf_page_print(
ut_print_timestamp(stderr); ut_print_timestamp(stderr);
fprintf(stderr, fprintf(stderr,
" InnoDB: Page dump in ascii and hex (%lu bytes):\n", " InnoDB: Page dump in ascii and hex (%lu bytes):\n",
(ulong) size); size);
ut_print_buf(stderr, read_buf, size); ut_print_buf(stderr, read_buf, size);
fputs("\nInnoDB: End of page dump\n", stderr); fputs("\nInnoDB: End of page dump\n", stderr);
} }
...@@ -2301,9 +2301,9 @@ buf_zip_decompress( ...@@ -2301,9 +2301,9 @@ buf_zip_decompress(
} }
fprintf(stderr, fprintf(stderr,
"InnoDB: unable to decompress space %lu page %lu\n", "InnoDB: unable to decompress space %u page %u\n",
(ulong) block->page.space, block->page.space,
(ulong) block->page.offset); block->page.offset);
return(FALSE); return(FALSE);
case FIL_PAGE_TYPE_ALLOCATED: case FIL_PAGE_TYPE_ALLOCATED:
...@@ -3536,8 +3536,8 @@ buf_page_init( ...@@ -3536,8 +3536,8 @@ buf_page_init(
fprintf(stderr, fprintf(stderr,
"InnoDB: Error: page %lu %lu already found" "InnoDB: Error: page %lu %lu already found"
" in the hash table: %p, %p\n", " in the hash table: %p, %p\n",
(ulong) space, space,
(ulong) offset, offset,
(const void*) hash_page, (const void*) block); (const void*) hash_page, (const void*) block);
#if defined UNIV_DEBUG || defined UNIV_BUF_DEBUG #if defined UNIV_DEBUG || defined UNIV_BUF_DEBUG
mutex_exit(&block->mutex); mutex_exit(&block->mutex);
...@@ -3898,7 +3898,7 @@ buf_page_create( ...@@ -3898,7 +3898,7 @@ buf_page_create(
#ifdef UNIV_DEBUG #ifdef UNIV_DEBUG
if (buf_debug_prints) { if (buf_debug_prints) {
fprintf(stderr, "Creating space %lu page %lu to buffer\n", fprintf(stderr, "Creating space %lu page %lu to buffer\n",
(ulong) space, (ulong) offset); space, offset);
} }
#endif /* UNIV_DEBUG */ #endif /* UNIV_DEBUG */
...@@ -4200,10 +4200,10 @@ buf_page_io_complete( ...@@ -4200,10 +4200,10 @@ buf_page_io_complete(
ut_print_timestamp(stderr); ut_print_timestamp(stderr);
fprintf(stderr, fprintf(stderr,
" InnoDB: Error: reading page %lu\n" " InnoDB: Error: reading page %u\n"
"InnoDB: which is in the" "InnoDB: which is in the"
" doublewrite buffer!\n", " doublewrite buffer!\n",
(ulong) bpage->offset); bpage->offset);
} else if (!read_space_id && !read_page_no) { } else if (!read_space_id && !read_page_no) {
/* This is likely an uninitialized page. */ /* This is likely an uninitialized page. */
} else if ((bpage->space } else if ((bpage->space
...@@ -4219,10 +4219,11 @@ buf_page_io_complete( ...@@ -4219,10 +4219,11 @@ buf_page_io_complete(
" InnoDB: Error: space id and page n:o" " InnoDB: Error: space id and page n:o"
" stored in the page\n" " stored in the page\n"
"InnoDB: read in are %lu:%lu," "InnoDB: read in are %lu:%lu,"
" should be %lu:%lu!\n", " should be %u:%u!\n",
(ulong) read_space_id, (ulong) read_page_no, read_space_id,
(ulong) bpage->space, read_page_no,
(ulong) bpage->offset); bpage->space,
bpage->offset);
} }
/* From version 3.23.38 up we store the page checksum /* From version 3.23.38 up we store the page checksum
...@@ -4246,19 +4247,19 @@ buf_page_io_complete( ...@@ -4246,19 +4247,19 @@ buf_page_io_complete(
fprintf(stderr, fprintf(stderr,
"InnoDB: Database page corruption on disk" "InnoDB: Database page corruption on disk"
" or a failed\n" " or a failed\n"
"InnoDB: file read of page %lu.\n" "InnoDB: file read of page %u.\n"
"InnoDB: You may have to recover" "InnoDB: You may have to recover"
" from a backup.\n", " from a backup.\n",
(ulong) bpage->offset); bpage->offset);
buf_page_print(frame, buf_page_get_zip_size(bpage), buf_page_print(frame, buf_page_get_zip_size(bpage),
BUF_PAGE_PRINT_NO_CRASH); BUF_PAGE_PRINT_NO_CRASH);
fprintf(stderr, fprintf(stderr,
"InnoDB: Database page corruption on disk" "InnoDB: Database page corruption on disk"
" or a failed\n" " or a failed\n"
"InnoDB: file read of page %lu.\n" "InnoDB: file read of page %u.\n"
"InnoDB: You may have to recover" "InnoDB: You may have to recover"
" from a backup.\n", " from a backup.\n",
(ulong) bpage->offset); bpage->offset);
fputs("InnoDB: It is also possible that" fputs("InnoDB: It is also possible that"
" your operating\n" " your operating\n"
"InnoDB: system has corrupted its" "InnoDB: system has corrupted its"
...@@ -4374,8 +4375,8 @@ buf_page_io_complete( ...@@ -4374,8 +4375,8 @@ buf_page_io_complete(
if (buf_debug_prints) { if (buf_debug_prints) {
fprintf(stderr, "Has %s page space %lu page no %lu\n", fprintf(stderr, "Has %s page space %lu page no %lu\n",
io_type == BUF_IO_READ ? "read" : "written", io_type == BUF_IO_READ ? "read" : "written",
(ulong) buf_page_get_space(bpage), buf_page_get_space(bpage),
(ulong) buf_page_get_page_no(bpage)); buf_page_get_page_no(bpage));
} }
#endif /* UNIV_DEBUG */ #endif /* UNIV_DEBUG */
...@@ -4410,17 +4411,17 @@ buf_all_freed_instance( ...@@ -4410,17 +4411,17 @@ buf_all_freed_instance(
if (UNIV_LIKELY_NULL(block)) { if (UNIV_LIKELY_NULL(block)) {
fil_space_t* space = fil_space_get(block->page.space); fil_space_t* space = fil_space_get(block->page.space);
ib_logf(IB_LOG_LEVEL_ERROR, ib_logf(IB_LOG_LEVEL_ERROR,
"Page %lu %lu still fixed or dirty.", "Page %u %u still fixed or dirty.",
(ulong) block->page.space, block->page.space,
(ulong) block->page.offset); block->page.offset);
ib_logf(IB_LOG_LEVEL_ERROR, ib_logf(IB_LOG_LEVEL_ERROR,
"Page oldest_modification %lu fix_count %d io_fix %d.", "Page oldest_modification %lu fix_count %d io_fix %d.",
block->page.oldest_modification, block->page.oldest_modification,
block->page.buf_fix_count, block->page.buf_fix_count,
buf_page_get_io_fix(&block->page)); buf_page_get_io_fix(&block->page));
ib_logf(IB_LOG_LEVEL_ERROR, ib_logf(IB_LOG_LEVEL_ERROR,
"Page space_id %lu name %s.", "Page space_id %u name %s.",
(ulong)block->page.space, block->page.space,
(space && space->name) ? space->name : "NULL"); (space && space->name) ? space->name : "NULL");
ut_error; ut_error;
} }
...@@ -4721,16 +4722,16 @@ buf_pool_validate_instance( ...@@ -4721,16 +4722,16 @@ buf_pool_validate_instance(
if (n_lru + n_free > buf_pool->curr_size + n_zip) { if (n_lru + n_free > buf_pool->curr_size + n_zip) {
fprintf(stderr, "n LRU %lu, n free %lu, pool %lu zip %lu\n", fprintf(stderr, "n LRU %lu, n free %lu, pool %lu zip %lu\n",
(ulong) n_lru, (ulong) n_free, n_lru, n_free,
(ulong) buf_pool->curr_size, (ulong) n_zip); buf_pool->curr_size, n_zip);
ut_error; ut_error;
} }
ut_a(UT_LIST_GET_LEN(buf_pool->LRU) == n_lru); ut_a(UT_LIST_GET_LEN(buf_pool->LRU) == n_lru);
if (UT_LIST_GET_LEN(buf_pool->free) != n_free) { if (UT_LIST_GET_LEN(buf_pool->free) != n_free) {
fprintf(stderr, "Free list len %lu, free blocks %lu\n", fprintf(stderr, "Free list len %lu, free blocks %lu\n",
(ulong) UT_LIST_GET_LEN(buf_pool->free), UT_LIST_GET_LEN(buf_pool->free),
(ulong) n_free); n_free);
ut_error; ut_error;
} }
...@@ -4809,20 +4810,20 @@ buf_print_instance( ...@@ -4809,20 +4810,20 @@ buf_print_instance(
"n pending flush LRU %lu list %lu single page %lu\n" "n pending flush LRU %lu list %lu single page %lu\n"
"pages made young %lu, not young %lu\n" "pages made young %lu, not young %lu\n"
"pages read %lu, created %lu, written %lu\n", "pages read %lu, created %lu, written %lu\n",
(ulong) size, (ulint) size,
(ulong) UT_LIST_GET_LEN(buf_pool->LRU), (ulint) UT_LIST_GET_LEN(buf_pool->LRU),
(ulong) UT_LIST_GET_LEN(buf_pool->free), (ulint) UT_LIST_GET_LEN(buf_pool->free),
(ulong) UT_LIST_GET_LEN(buf_pool->flush_list), (ulint) UT_LIST_GET_LEN(buf_pool->flush_list),
(ulong) buf_pool->n_pend_unzip, (ulint) buf_pool->n_pend_unzip,
(ulong) buf_pool->n_pend_reads, (ulint) buf_pool->n_pend_reads,
(ulong) buf_pool->n_flush[BUF_FLUSH_LRU], (ulint) buf_pool->n_flush[BUF_FLUSH_LRU],
(ulong) buf_pool->n_flush[BUF_FLUSH_LIST], (ulint) buf_pool->n_flush[BUF_FLUSH_LIST],
(ulong) buf_pool->n_flush[BUF_FLUSH_SINGLE_PAGE], (ulint) buf_pool->n_flush[BUF_FLUSH_SINGLE_PAGE],
(ulong) buf_pool->stat.n_pages_made_young, (ulint) buf_pool->stat.n_pages_made_young,
(ulong) buf_pool->stat.n_pages_not_made_young, (ulint) buf_pool->stat.n_pages_not_made_young,
(ulong) buf_pool->stat.n_pages_read, (ulint) buf_pool->stat.n_pages_read,
(ulong) buf_pool->stat.n_pages_created, (ulint) buf_pool->stat.n_pages_created,
(ulong) buf_pool->stat.n_pages_written); (ulint) buf_pool->stat.n_pages_written);
buf_flush_list_mutex_exit(buf_pool); buf_flush_list_mutex_exit(buf_pool);
...@@ -4873,7 +4874,7 @@ buf_print_instance( ...@@ -4873,7 +4874,7 @@ buf_print_instance(
fprintf(stderr, fprintf(stderr,
"Block count for index %llu in buffer is about %lu", "Block count for index %llu in buffer is about %lu",
(ullint) index_ids[i], (ullint) index_ids[i],
(ulong) counts[i]); (ulint) counts[i]);
if (index) { if (index) {
putc(' ', stderr); putc(' ', stderr);
...@@ -5321,10 +5322,10 @@ buf_print_io_instance( ...@@ -5321,10 +5322,10 @@ buf_print_io_instance(
fprintf(file, fprintf(file,
"Buffer pool hit rate %lu / 1000," "Buffer pool hit rate %lu / 1000,"
" young-making rate %lu / 1000 not %lu / 1000\n", " young-making rate %lu / 1000 not %lu / 1000\n",
(ulong) hit_rate, (ulint) hit_rate,
(ulong) (1000 * pool_info->young_making_delta (ulint) (1000 * pool_info->young_making_delta
/ pool_info->n_page_get_delta), / pool_info->n_page_get_delta),
(ulong) (1000 * pool_info->not_young_making_delta (ulint) (1000 * pool_info->not_young_making_delta
/ pool_info->n_page_get_delta)); / pool_info->n_page_get_delta));
} else { } else {
fputs("No buffer pool page gets since the last printout\n", fputs("No buffer pool page gets since the last printout\n",
......
...@@ -683,7 +683,7 @@ buf_page_is_corrupted( ...@@ -683,7 +683,7 @@ buf_page_is_corrupted(
"InnoDB: " REFMAN "InnoDB: " REFMAN
"forcing-innodb-recovery.html\n" "forcing-innodb-recovery.html\n"
"InnoDB: for more information.\n", "InnoDB: for more information.\n",
(ulong) mach_read_from_4( (ulint) mach_read_from_4(
read_buf + FIL_PAGE_OFFSET), read_buf + FIL_PAGE_OFFSET),
(lsn_t) mach_read_from_8( (lsn_t) mach_read_from_8(
read_buf + FIL_PAGE_LSN), read_buf + FIL_PAGE_LSN),
...@@ -878,7 +878,7 @@ buf_page_print( ...@@ -878,7 +878,7 @@ buf_page_print(
ut_print_timestamp(stderr); ut_print_timestamp(stderr);
fprintf(stderr, fprintf(stderr,
" InnoDB: Page dump in ascii and hex (%lu bytes):\n", " InnoDB: Page dump in ascii and hex (%lu bytes):\n",
(ulong) size); size);
ut_print_buf(stderr, read_buf, size); ut_print_buf(stderr, read_buf, size);
fputs("\nInnoDB: End of page dump\n", stderr); fputs("\nInnoDB: End of page dump\n", stderr);
} }
...@@ -2426,9 +2426,9 @@ buf_zip_decompress( ...@@ -2426,9 +2426,9 @@ buf_zip_decompress(
} }
fprintf(stderr, fprintf(stderr,
"InnoDB: unable to decompress space %lu page %lu\n", "InnoDB: unable to decompress space %u page %u\n",
(ulong) block->page.space, block->page.space,
(ulong) block->page.offset); block->page.offset);
return(FALSE); return(FALSE);
case FIL_PAGE_TYPE_ALLOCATED: case FIL_PAGE_TYPE_ALLOCATED:
...@@ -3735,8 +3735,8 @@ buf_page_init( ...@@ -3735,8 +3735,8 @@ buf_page_init(
fprintf(stderr, fprintf(stderr,
"InnoDB: Error: page %lu %lu already found" "InnoDB: Error: page %lu %lu already found"
" in the hash table: %p, %p\n", " in the hash table: %p, %p\n",
(ulong) space, space,
(ulong) offset, offset,
(const void*) hash_page, (const void*) block); (const void*) hash_page, (const void*) block);
#if defined UNIV_DEBUG || defined UNIV_BUF_DEBUG #if defined UNIV_DEBUG || defined UNIV_BUF_DEBUG
mutex_exit(&block->mutex); mutex_exit(&block->mutex);
...@@ -4102,7 +4102,7 @@ buf_page_create( ...@@ -4102,7 +4102,7 @@ buf_page_create(
#ifdef UNIV_DEBUG #ifdef UNIV_DEBUG
if (buf_debug_prints) { if (buf_debug_prints) {
fprintf(stderr, "Creating space %lu page %lu to buffer\n", fprintf(stderr, "Creating space %lu page %lu to buffer\n",
(ulong) space, (ulong) offset); space, offset);
} }
#endif /* UNIV_DEBUG */ #endif /* UNIV_DEBUG */
...@@ -4412,10 +4412,10 @@ buf_page_io_complete( ...@@ -4412,10 +4412,10 @@ buf_page_io_complete(
ut_print_timestamp(stderr); ut_print_timestamp(stderr);
fprintf(stderr, fprintf(stderr,
" InnoDB: Error: reading page %lu\n" " InnoDB: Error: reading page %u\n"
"InnoDB: which is in the" "InnoDB: which is in the"
" doublewrite buffer!\n", " doublewrite buffer!\n",
(ulong) bpage->offset); bpage->offset);
} else if (!read_space_id && !read_page_no) { } else if (!read_space_id && !read_page_no) {
/* This is likely an uninitialized page. */ /* This is likely an uninitialized page. */
} else if ((bpage->space } else if ((bpage->space
...@@ -4431,10 +4431,11 @@ buf_page_io_complete( ...@@ -4431,10 +4431,11 @@ buf_page_io_complete(
" InnoDB: Error: space id and page n:o" " InnoDB: Error: space id and page n:o"
" stored in the page\n" " stored in the page\n"
"InnoDB: read in are %lu:%lu," "InnoDB: read in are %lu:%lu,"
" should be %lu:%lu!\n", " should be %u:%u!\n",
(ulong) read_space_id, (ulong) read_page_no, read_space_id,
(ulong) bpage->space, read_page_no,
(ulong) bpage->offset); bpage->space,
bpage->offset);
} }
if (UNIV_LIKELY(!bpage->is_corrupt || if (UNIV_LIKELY(!bpage->is_corrupt ||
...@@ -4460,19 +4461,19 @@ buf_page_io_complete( ...@@ -4460,19 +4461,19 @@ buf_page_io_complete(
fprintf(stderr, fprintf(stderr,
"InnoDB: Database page corruption on disk" "InnoDB: Database page corruption on disk"
" or a failed\n" " or a failed\n"
"InnoDB: file read of page %lu.\n" "InnoDB: file read of page %u.\n"
"InnoDB: You may have to recover" "InnoDB: You may have to recover"
" from a backup.\n", " from a backup.\n",
(ulong) bpage->offset); bpage->offset);
buf_page_print(frame, buf_page_get_zip_size(bpage), buf_page_print(frame, buf_page_get_zip_size(bpage),
BUF_PAGE_PRINT_NO_CRASH); BUF_PAGE_PRINT_NO_CRASH);
fprintf(stderr, fprintf(stderr,
"InnoDB: Database page corruption on disk" "InnoDB: Database page corruption on disk"
" or a failed\n" " or a failed\n"
"InnoDB: file read of page %lu.\n" "InnoDB: file read of page %u.\n"
"InnoDB: You may have to recover" "InnoDB: You may have to recover"
" from a backup.\n", " from a backup.\n",
(ulong) bpage->offset); bpage->offset);
fputs("InnoDB: It is also possible that" fputs("InnoDB: It is also possible that"
" your operating\n" " your operating\n"
"InnoDB: system has corrupted its" "InnoDB: system has corrupted its"
...@@ -4658,8 +4659,8 @@ buf_page_io_complete( ...@@ -4658,8 +4659,8 @@ buf_page_io_complete(
if (buf_debug_prints) { if (buf_debug_prints) {
fprintf(stderr, "Has %s page space %lu page no %lu\n", fprintf(stderr, "Has %s page space %lu page no %lu\n",
io_type == BUF_IO_READ ? "read" : "written", io_type == BUF_IO_READ ? "read" : "written",
(ulong) buf_page_get_space(bpage), buf_page_get_space(bpage),
(ulong) buf_page_get_page_no(bpage)); buf_page_get_page_no(bpage));
} }
#endif /* UNIV_DEBUG */ #endif /* UNIV_DEBUG */
...@@ -4696,17 +4697,17 @@ buf_all_freed_instance( ...@@ -4696,17 +4697,17 @@ buf_all_freed_instance(
if (UNIV_LIKELY_NULL(block)) { if (UNIV_LIKELY_NULL(block)) {
fil_space_t* space = fil_space_get(block->page.space); fil_space_t* space = fil_space_get(block->page.space);
ib_logf(IB_LOG_LEVEL_ERROR, ib_logf(IB_LOG_LEVEL_ERROR,
"Page %lu %lu still fixed or dirty.", "Page %u %u still fixed or dirty.",
(ulong) block->page.space, block->page.space,
(ulong) block->page.offset); block->page.offset);
ib_logf(IB_LOG_LEVEL_ERROR, ib_logf(IB_LOG_LEVEL_ERROR,
"Page oldest_modification %lu fix_count %d io_fix %d.", "Page oldest_modification %lu fix_count %d io_fix %d.",
block->page.oldest_modification, block->page.oldest_modification,
block->page.buf_fix_count, block->page.buf_fix_count,
buf_page_get_io_fix(&block->page)); buf_page_get_io_fix(&block->page));
ib_logf(IB_LOG_LEVEL_ERROR, ib_logf(IB_LOG_LEVEL_ERROR,
"Page space_id %lu name %s.", "Page space_id %u name %s.",
(ulong)block->page.space, block->page.space,
(space && space->name) ? space->name : "NULL"); (space && space->name) ? space->name : "NULL");
ut_error; ut_error;
} }
...@@ -4999,8 +5000,8 @@ buf_pool_validate_instance( ...@@ -4999,8 +5000,8 @@ buf_pool_validate_instance(
if (n_lru + n_free > buf_pool->curr_size + n_zip) { if (n_lru + n_free > buf_pool->curr_size + n_zip) {
fprintf(stderr, "n LRU %lu, n free %lu, pool %lu zip %lu\n", fprintf(stderr, "n LRU %lu, n free %lu, pool %lu zip %lu\n",
(ulong) n_lru, (ulong) n_free, n_lru, n_free,
(ulong) buf_pool->curr_size, (ulong) n_zip); buf_pool->curr_size, n_zip);
ut_error; ut_error;
} }
...@@ -5010,8 +5011,8 @@ buf_pool_validate_instance( ...@@ -5010,8 +5011,8 @@ buf_pool_validate_instance(
if (UT_LIST_GET_LEN(buf_pool->free) != n_free) { if (UT_LIST_GET_LEN(buf_pool->free) != n_free) {
fprintf(stderr, "Free list len %lu, free blocks %lu\n", fprintf(stderr, "Free list len %lu, free blocks %lu\n",
(ulong) UT_LIST_GET_LEN(buf_pool->free), UT_LIST_GET_LEN(buf_pool->free),
(ulong) n_free); n_free);
ut_error; ut_error;
} }
...@@ -5092,20 +5093,20 @@ buf_print_instance( ...@@ -5092,20 +5093,20 @@ buf_print_instance(
"n pending flush LRU %lu list %lu single page %lu\n" "n pending flush LRU %lu list %lu single page %lu\n"
"pages made young %lu, not young %lu\n" "pages made young %lu, not young %lu\n"
"pages read %lu, created %lu, written %lu\n", "pages read %lu, created %lu, written %lu\n",
(ulong) size, (ulint) size,
(ulong) UT_LIST_GET_LEN(buf_pool->LRU), (ulint) UT_LIST_GET_LEN(buf_pool->LRU),
(ulong) UT_LIST_GET_LEN(buf_pool->free), (ulint) UT_LIST_GET_LEN(buf_pool->free),
(ulong) UT_LIST_GET_LEN(buf_pool->flush_list), (ulint) UT_LIST_GET_LEN(buf_pool->flush_list),
(ulong) buf_pool->n_pend_unzip, (ulint) buf_pool->n_pend_unzip,
(ulong) buf_pool->n_pend_reads, (ulint) buf_pool->n_pend_reads,
(ulong) buf_pool->n_flush[BUF_FLUSH_LRU], (ulint) buf_pool->n_flush[BUF_FLUSH_LRU],
(ulong) buf_pool->n_flush[BUF_FLUSH_LIST], (ulint) buf_pool->n_flush[BUF_FLUSH_LIST],
(ulong) buf_pool->n_flush[BUF_FLUSH_SINGLE_PAGE], (ulint) buf_pool->n_flush[BUF_FLUSH_SINGLE_PAGE],
(ulong) buf_pool->stat.n_pages_made_young, (ulint) buf_pool->stat.n_pages_made_young,
(ulong) buf_pool->stat.n_pages_not_made_young, (ulint) buf_pool->stat.n_pages_not_made_young,
(ulong) buf_pool->stat.n_pages_read, (ulint) buf_pool->stat.n_pages_read,
(ulong) buf_pool->stat.n_pages_created, (ulint) buf_pool->stat.n_pages_created,
(ulong) buf_pool->stat.n_pages_written); (ulint) buf_pool->stat.n_pages_written);
/* Count the number of blocks belonging to each index in the buffer */ /* Count the number of blocks belonging to each index in the buffer */
...@@ -5156,7 +5157,7 @@ buf_print_instance( ...@@ -5156,7 +5157,7 @@ buf_print_instance(
fprintf(stderr, fprintf(stderr,
"Block count for index %llu in buffer is about %lu", "Block count for index %llu in buffer is about %lu",
(ullint) index_ids[i], (ullint) index_ids[i],
(ulong) counts[i]); (ulint) counts[i]);
if (index) { if (index) {
putc(' ', stderr); putc(' ', stderr);
...@@ -5610,10 +5611,10 @@ buf_print_io_instance( ...@@ -5610,10 +5611,10 @@ buf_print_io_instance(
fprintf(file, fprintf(file,
"Buffer pool hit rate %lu / 1000," "Buffer pool hit rate %lu / 1000,"
" young-making rate %lu / 1000 not %lu / 1000\n", " young-making rate %lu / 1000 not %lu / 1000\n",
(ulong) hit_rate, (ulint) hit_rate,
(ulong) (1000 * pool_info->young_making_delta (ulint) (1000 * pool_info->young_making_delta
/ pool_info->n_page_get_delta), / pool_info->n_page_get_delta),
(ulong) (1000 * pool_info->not_young_making_delta (ulint) (1000 * pool_info->not_young_making_delta
/ pool_info->n_page_get_delta)); / pool_info->n_page_get_delta));
} else { } else {
fputs("No buffer pool page gets since the last printout\n", fputs("No buffer pool page gets since the last printout\n",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment