row0sel.c, page0page.ic:

  Add diagnostic code to print hex dumps and track corruption of next record offsets in an index page
parent b9512a55
......@@ -479,7 +479,15 @@ page_rec_get_next(
offs = rec_get_next_offs(rec);
ut_a(offs < UNIV_PAGE_SIZE);
if (offs >= UNIV_PAGE_SIZE) {
fprintf(stderr,
"InnoDB: Next record offset is nonsensical %lu in record at offset %lu\n",
(ulong)offs, (ulong)(rec - page));
buf_page_print(page);
ut_a(0);
}
if (offs == 0) {
......
......@@ -3088,6 +3088,7 @@ rec_loop:
if (srv_force_recovery == 0 || moves_up == FALSE) {
ut_print_timestamp(stderr);
buf_page_print(buf_frame_align(rec));
fprintf(stderr,
" InnoDB: Index corruption: rec offs %lu next offs %lu, page no %lu,\n"
"InnoDB: ",
......
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