Commit c84ff986 authored by unknown's avatar unknown
Browse files

fil0fil.c:

  We accidentally checked if the DIRECTORY is of type OS_FILE_TYPE_UNKNOWN; our intention was to check if the FILE is that; best to remove the check altogether, as in crash recovery it is safest to try to open also files whose type is unknown
os0file.c:
  Fix a bug: in Windows, os_file_readdir_next_file() returned OS_FILE_TYPE_UNKNOWN as the type of a regular file; this did not break mysqld, but did break ibbackup on Windows


innobase/os/os0file.c:
  Fix a bug: in Windows, os_file_readdir_next_file() returned OS_FILE_TYPE_UNKNOWN as the type of a regular file; this did not break mysqld, but did break ibbackup on Windows
innobase/fil/fil0fil.c:
  We accidentally checked if the DIRECTORY is of type OS_FILE_TYPE_UNKNOWN; our intention was to check if the FILE is that; best to remove the check altogether, as in crash recovery it is safest to try to open also files whose type is unknown
parent 555c0e8f
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -3002,8 +3002,8 @@ fil_load_single_table_tablespaces(void)
				/* printf(
"     Looking at file %s\n", fileinfo.name); */

			        if (fileinfo.type == OS_FILE_TYPE_DIR
				    || dbinfo.type == OS_FILE_TYPE_UNKNOWN) {
			        if (fileinfo.type == OS_FILE_TYPE_DIR) {

				        goto next_file_item;
				}

+5 −5
Original line number Diff line number Diff line
@@ -700,12 +700,12 @@ dbname.sym can redirect a database directory:
		} else if (lpFindFileData->dwFileAttributes
						& FILE_ATTRIBUTE_DIRECTORY) {
		        info->type = OS_FILE_TYPE_DIR;
		} else if (lpFindFileData->dwFileAttributes
						& FILE_ATTRIBUTE_NORMAL) {
/* TODO: are FILE_ATTRIBUTE_NORMAL files really all normal files? */	
			info->type = OS_FILE_TYPE_FILE;
		} else {
			info->type = OS_FILE_TYPE_UNKNOWN;
			/* It is probably safest to assume that all other
			file types are normal. Better to check them rather
			than blindly skip them. */

			info->type = OS_FILE_TYPE_FILE;
		}
	}