Commit be89cb71 authored by unknown's avatar unknown

os0file.c:

  Improve error messages which may occur in installation


innobase/os/os0file.c:
  Improve error messages which may occur in installation
parent 38e174cc
...@@ -169,8 +169,20 @@ os_file_get_last_error(void) ...@@ -169,8 +169,20 @@ os_file_get_last_error(void)
if (err != ERROR_FILE_EXISTS) { if (err != ERROR_FILE_EXISTS) {
fprintf(stderr, fprintf(stderr,
"InnoDB: Warning: operating system error number %li in a file operation.\n", "InnoDB: Operating system error number %li in a file operation.\n"
"InnoDB: See http://www.innodb.com/ibman.html for installation help.\n",
(long) err); (long) err);
if (err == ERROR_PATH_NOT_FOUND) {
fprintf(stderr,
"InnoDB: The error means the system cannot find the path specified.\n"
"InnoDB: In installation you must create directories yourself, InnoDB\n"
"InnoDB: does not create them.\n");
} else {
fprintf(stderr,
"InnoDB: Look from section 13.2 at http://www.innodb.com/ibman.html\n"
"InnoDB: what the error number means.\n");
}
} }
if (err == ERROR_FILE_NOT_FOUND) { if (err == ERROR_FILE_NOT_FOUND) {
...@@ -186,9 +198,21 @@ os_file_get_last_error(void) ...@@ -186,9 +198,21 @@ os_file_get_last_error(void)
err = (ulint) errno; err = (ulint) errno;
if (err != EEXIST) { if (err != EEXIST) {
fprintf(stderr, fprintf(stderr,
"InnoDB: Warning: operating system error number %i in a file operation.\n", "InnoDB: Operating system error number %li in a file operation.\n"
errno); "InnoDB: See http://www.innodb.com/ibman.html for installation help.\n",
(long) err);
if (err == ENOENT) {
fprintf(stderr,
"InnoDB: The error means the system cannot find the path specified.\n"
"InnoDB: In installation you must create directories yourself, InnoDB\n"
"InnoDB: does not create them.\n");
} else {
fprintf(stderr,
"InnoDB: Look from section 13.2 at http://www.innodb.com/ibman.html\n"
"InnoDB: what the error number means or use the perror program of MySQL.\n");
}
} }
if (err == ENOSPC ) { if (err == ENOSPC ) {
...@@ -228,11 +252,11 @@ os_file_handle_error( ...@@ -228,11 +252,11 @@ os_file_handle_error(
if (err == OS_FILE_DISK_FULL) { if (err == OS_FILE_DISK_FULL) {
fprintf(stderr, "\n"); fprintf(stderr, "\n");
if (name) { if (name) {
fprintf(stderr, fprintf(stderr,
"InnoDB: Encountered a problem with file %s.\n", "InnoDB: Encountered a problem with file %s.\n",
name); name);
} }
fprintf(stderr, fprintf(stderr,
"InnoDB: Cannot continue operation.\n" "InnoDB: Cannot continue operation.\n"
"InnoDB: Disk is full. Try to clean the disk to free space.\n" "InnoDB: Disk is full. Try to clean the disk to free space.\n"
"InnoDB: Delete a possible created file and restart.\n"); "InnoDB: Delete a possible created file and restart.\n");
...@@ -245,6 +269,10 @@ os_file_handle_error( ...@@ -245,6 +269,10 @@ os_file_handle_error(
} else if (err == OS_FILE_ALREADY_EXISTS) { } else if (err == OS_FILE_ALREADY_EXISTS) {
return(FALSE); return(FALSE);
} else { } else {
if (name) {
fprintf(stderr, "InnoDB: File name %s\n", name);
}
fprintf(stderr, "InnoDB: Cannot continue operation.\n"); fprintf(stderr, "InnoDB: Cannot continue operation.\n");
exit(1); exit(1);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment