summaryrefslogtreecommitdiff
path: root/innobase/srv
diff options
context:
space:
mode:
authorunknown <jimw@mysql.com>2005-03-03 15:01:46 -0800
committerunknown <jimw@mysql.com>2005-03-03 15:01:46 -0800
commitdaaeeedb499cd27ff0279d8321808cdbccdd7e09 (patch)
treed9fcf7c0806dd22a5d3dc0996b6c7b4ff240cbb9 /innobase/srv
parent80b474bfc0c77ae2a4b477b15ac6681b05d33e6d (diff)
parent92895d00527f62a57ed569f85df01dbf4f0db9c3 (diff)
downloadmariadb-git-daaeeedb499cd27ff0279d8321808cdbccdd7e09.tar.gz
Merged from 4.1
innobase/os/os0file.c: Auto merged innobase/srv/srv0start.c: Auto merged mysql-test/r/bigint.result: Auto merged mysql-test/r/mysqldump.result: Auto merged mysql-test/r/symlink.result: Auto merged mysql-test/t/mysqldump.test: Auto merged mysql-test/t/symlink.test: Auto merged ndb/src/kernel/blocks/dbtc/DbtcMain.cpp: Auto merged ndb/test/ndbapi/testNodeRestart.cpp: Auto merged ndb/test/run-test/daily-devel-tests.txt: Auto merged sql/item.h: Auto merged strings/ctype-win1250ch.c: Auto merged mysql-test/r/grant2.result: Hand-merged new test mysql-test/t/grant2.test: Hand-merged new test ndb/include/ndbapi/NdbTransaction.hpp: Used 5.0 version per tomas sql/sql_acl.cc: Merge fix for Bug #3309.
Diffstat (limited to 'innobase/srv')
-rw-r--r--innobase/srv/srv0start.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/innobase/srv/srv0start.c b/innobase/srv/srv0start.c
index b2f97492e70..210739b26fd 100644
--- a/innobase/srv/srv0start.c
+++ b/innobase/srv/srv0start.c
@@ -568,7 +568,14 @@ open_or_create_log_file(
files[i] = os_file_create(name, OS_FILE_CREATE, OS_FILE_NORMAL,
OS_LOG_FILE, &ret);
if (ret == FALSE) {
- if (os_file_get_last_error(FALSE) != OS_FILE_ALREADY_EXISTS) {
+ if (os_file_get_last_error(FALSE) != OS_FILE_ALREADY_EXISTS
+#ifdef UNIV_AIX
+ /* AIX 5.1 after security patch ML7 may have errno set
+ to 0 here, which causes our function to return 100;
+ work around that AIX problem */
+ && os_file_get_last_error(FALSE) != 100
+#endif
+ ) {
fprintf(stderr,
"InnoDB: Error in creating or opening %s\n", name);
@@ -728,7 +735,14 @@ open_or_create_data_files(
OS_FILE_NORMAL, OS_DATA_FILE, &ret);
if (ret == FALSE && os_file_get_last_error(FALSE) !=
- OS_FILE_ALREADY_EXISTS) {
+ OS_FILE_ALREADY_EXISTS
+#ifdef UNIV_AIX
+ /* AIX 5.1 after security patch ML7 may have
+ errno set to 0 here, which causes our function
+ to return 100; work around that AIX problem */
+ && os_file_get_last_error(FALSE) != 100
+#endif
+ ) {
fprintf(stderr,
"InnoDB: Error in creating or opening %s\n",
name);