Commit dd525155 authored by unknown's avatar unknown

dict0dict.ic Remove acquisition of the dictionary mutex: this may fix the hang...

dict0dict.ic	Remove acquisition of the dictionary mutex: this may fix the hang observed by Peter Zaitsev
os0file.c	Use O_SYNC instead of O_DSYNC because in Linux there may be a bug


innobase/os/os0file.c:
  Use O_SYNC instead of O_DSYNC because in Linux there may be a bug
innobase/include/dict0dict.ic:
  Remove acquisition of the dictionary mutex: this may fix the hang observed by Peter Zaitsev
parent e9c65e9f
...@@ -652,8 +652,6 @@ dict_table_get_index( ...@@ -652,8 +652,6 @@ dict_table_get_index(
{ {
dict_index_t* index = NULL; dict_index_t* index = NULL;
mutex_enter(&(dict_sys->mutex));
index = dict_table_get_first_index(table); index = dict_table_get_first_index(table);
while (index != NULL) { while (index != NULL) {
...@@ -665,8 +663,6 @@ dict_table_get_index( ...@@ -665,8 +663,6 @@ dict_table_get_index(
index = dict_table_get_next_index(index); index = dict_table_get_next_index(index);
} }
mutex_exit(&(dict_sys->mutex));
return(index); return(index);
} }
......
...@@ -347,9 +347,12 @@ os_file_create( ...@@ -347,9 +347,12 @@ os_file_create(
UT_NOT_USED(purpose); UT_NOT_USED(purpose);
#ifdef O_DSYNC /* Currently use only O_SYNC because there may be a bug in
Linux O_DSYNC! */
#ifdef O_SYNC
if (srv_unix_file_flush_method == SRV_UNIX_O_DSYNC) { if (srv_unix_file_flush_method == SRV_UNIX_O_DSYNC) {
create_flag = create_flag | O_DSYNC; create_flag = create_flag | O_SYNC;
} }
#endif #endif
if (create_mode == OS_FILE_CREATE) { if (create_mode == OS_FILE_CREATE) {
......
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