summaryrefslogtreecommitdiff
path: root/innobase/fsp/fsp0fsp.c
diff options
context:
space:
mode:
authorunknown <monty@mashka.mysql.fi>2003-09-11 20:31:40 +0300
committerunknown <monty@mashka.mysql.fi>2003-09-11 20:31:40 +0300
commit41824a35338012ff8196eb975f961d5e0f0e2a22 (patch)
tree1475a169c541e6b7aedb36103dd255fe52fc0517 /innobase/fsp/fsp0fsp.c
parent07bc35e1d024e5e3b81b131a47878510f0521609 (diff)
parentd32bdcb1bfc274476cdd945e66e00f3ec31253c3 (diff)
downloadmariadb-git-41824a35338012ff8196eb975f961d5e0f0e2a22.tar.gz
merge with 4.1 tree
client/mysqltest.c: Auto merged include/mysql.h: Auto merged libmysql/errmsg.c: Auto merged libmysql/libmysql.c: Auto merged mysql-test/mysql-test-run.sh: Auto merged sql/field.cc: Auto merged sql/item.cc: Auto merged sql/item.h: Auto merged sql/item_cmpfunc.cc: Auto merged sql/item_func.cc: Auto merged sql/item_func.h: Auto merged sql/mysql_priv.h: Auto merged sql/mysqld.cc: Auto merged sql/share/portuguese/errmsg.txt: Auto merged sql/share/spanish/errmsg.txt: Auto merged sql/sql_select.cc: Auto merged sql/sql_table.cc: Auto merged sql/sql_yacc.yy: Auto merged tests/client_test.c: Auto merged
Diffstat (limited to 'innobase/fsp/fsp0fsp.c')
-rw-r--r--innobase/fsp/fsp0fsp.c33
1 files changed, 31 insertions, 2 deletions
diff --git a/innobase/fsp/fsp0fsp.c b/innobase/fsp/fsp0fsp.c
index 20bf4972f64..8727c5156e4 100644
--- a/innobase/fsp/fsp0fsp.c
+++ b/innobase/fsp/fsp0fsp.c
@@ -2656,7 +2656,13 @@ fseg_free_page_low(
ulint not_full_n_used;
ulint state;
ulint i;
- char errbuf[200];
+ char errbuf[200];
+
+#ifdef __WIN__
+ dulint desm;
+ dulint segm;
+#endif
+
ut_ad(seg_inode && mtr);
ut_ad(mach_read_from_4(seg_inode + FSEG_MAGIC_N) ==
@@ -2736,7 +2742,10 @@ fseg_free_page_low(
fprintf(stderr,
"InnoDB: Dump of the segment inode: %s\n", errbuf);
- fprintf(stderr,
+
+#ifndef __WIN__
+
+ fprintf(stderr,
"InnoDB: Serious error: InnoDB is trying to free space %lu page %lu,\n"
"InnoDB: which does not belong to segment %lu %lu but belongs\n"
"InnoDB: to segment %lu %lu.\n",
@@ -2750,6 +2759,26 @@ fseg_free_page_low(
ut_dulint_get_low(
mtr_read_dulint(seg_inode + FSEG_ID, MLOG_8BYTES, mtr)));
+#else
+
+/* More pedantic usage to avoid VC++ 6.0 compiler errors due to inline
+ function expansion issues */
+
+ desm = mtr_read_dulint(descr + XDES_ID, MLOG_8BYTES, mtr);
+ segm = mtr_read_dulint(seg_inode + FSEG_ID, MLOG_8BYTES, mtr);
+
+ fprintf(stderr,
+"InnoDB: Serious error: InnoDB is trying to free space %lu page %lu,\n"
+"InnoDB: which does not belong to segment %lu %lu but belongs\n"
+"InnoDB: to segment %lu %lu.\n",
+ space, page,
+ ut_dulint_get_high(desm),
+ ut_dulint_get_low(desm),
+ ut_dulint_get_high(segm),
+ ut_dulint_get_low(segm));
+
+#endif
+
fprintf(stderr,
"InnoDB: If the InnoDB recovery crashes here, see section 6.1\n"
"InnoDB: of http://www.innodb.com/ibman.html about forcing recovery.\n");