From a2611f9ec61ab3de5177d389aa204db98548da14 Mon Sep 17 00:00:00 2001 From: unknown Date: Sun, 19 Oct 2003 20:31:32 +0300 Subject: [PATCH] os0file.c: Check that writes to data files always happen in to addresses divisible by 16 kB, and the chunk size is also divisible by 16 kB; a user reported 2 corrupt pages from Linux-2.4.20 where an index page seemed displaced innobase/os/os0file.c: Check that writes to data files always happen in to addresses divisible by 16 kB, and the chunk size is also divisible by 16 kB; a user reported 2 corrupt pages from Linux-2.4.20 where an index page seemed displaced --- innobase/os/os0file.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/innobase/os/os0file.c b/innobase/os/os0file.c index 24bc0f1bdf9..55d0ade1bf7 100644 --- a/innobase/os/os0file.c +++ b/innobase/os/os0file.c @@ -2678,6 +2678,10 @@ consecutive_loop: if (array == os_aio_write_array) { if ((total_len % UNIV_PAGE_SIZE != 0) || (slot->offset % UNIV_PAGE_SIZE != 0)) { + fprintf(stderr, +"InnoDB: Error: trying a displaced write to %s %lu %lu, len %lu\n", + slot->name, slot->offset_high, + slot->offset, total_len); ut_a(0); }