summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <knielsen@knielsen-hq.org>2012-06-08 11:18:56 +0200
committerunknown <knielsen@knielsen-hq.org>2012-06-08 11:18:56 +0200
commitcb6109cde188b5e018f2169e43bb08ac2bc3e68f (patch)
treee99e483f95620bed1efa3089b9c164a953afb077
parent8efc63ba5d32b77501226921ee503b9ae513a365 (diff)
downloadmariadb-git-cb6109cde188b5e018f2169e43bb08ac2bc3e68f.tar.gz
MDEV-329: MariaDB 5.5 does not use fdatasync().
The --debug-no-sync incorrectly defaulted to ON, disabling sync calls by default which can loose data or cause corruption. Also, the code used fsync() instead of the sometimes more efficient fdatasync().
-rw-r--r--config.h.cmake1
-rw-r--r--sql/mysqld.cc2
2 files changed, 2 insertions, 1 deletions
diff --git a/config.h.cmake b/config.h.cmake
index d03ad91189c..5f1614993c3 100644
--- a/config.h.cmake
+++ b/config.h.cmake
@@ -150,6 +150,7 @@
#cmakedefine HAVE_FCNTL 1
#cmakedefine HAVE_FCONVERT 1
#cmakedefine HAVE_FDATASYNC 1
+#cmakedefine HAVE_DECL_FDATASYNC 1
#cmakedefine HAVE_FESETROUND 1
#cmakedefine HAVE_FINITE 1
#cmakedefine HAVE_FP_EXCEPT 1
diff --git a/sql/mysqld.cc b/sql/mysqld.cc
index 9decf82dc13..c001991effc 100644
--- a/sql/mysqld.cc
+++ b/sql/mysqld.cc
@@ -6161,7 +6161,7 @@ struct my_option my_long_options[]=
#endif
{"debug-no-sync", 0,
"Disables system sync calls. Only for running tests or debugging!",
- &my_disable_sync, &my_disable_sync, 0, GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, 0},
+ &my_disable_sync, &my_disable_sync, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
#ifdef HAVE_REPLICATION
{"debug-sporadic-binlog-dump-fail", 0,
"Option used by mysql-test for debugging and testing of replication.",