summaryrefslogtreecommitdiff
path: root/innobase
diff options
context:
space:
mode:
Diffstat (limited to 'innobase')
-rw-r--r--innobase/os/os0file.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/innobase/os/os0file.c b/innobase/os/os0file.c
index cc743ffad41..93a914b8bbd 100644
--- a/innobase/os/os0file.c
+++ b/innobase/os/os0file.c
@@ -299,6 +299,15 @@ os_file_get_last_error(
return(OS_FILE_NOT_FOUND);
} else if (err == EEXIST) {
return(OS_FILE_ALREADY_EXISTS);
+#ifdef UNIV_AIX
+ } else if (err == 0) {
+ fprintf(stderr,
+"InnoDB: errno is 0. Since AIX 5.1 after security patch ML7 erroneously\n"
+"InnoDB: sets errno to 0 when it should be EEXIST, we assume that the real\n"
+"InnoDB: error here was EEXIST.\n");
+
+ return(OS_FILE_ALREADY_EXISTS);
+#endif
} else {
return(100 + err);
}