diff options
author | monty@mysql.com <> | 2003-11-02 15:55:02 +0200 |
---|---|---|
committer | monty@mysql.com <> | 2003-11-02 15:55:02 +0200 |
commit | 4668b54837f3cd0a4ee71b16841c41a6bdc44c06 (patch) | |
tree | cb9bb7181d68f8c4f3d892367e08536d2f609a19 /sql/unireg.cc | |
parent | 2ec94ade8feee8e4e971fcc37920785a6f22413c (diff) | |
download | mariadb-git-4668b54837f3cd0a4ee71b16841c41a6bdc44c06.tar.gz |
Call my_sync() after all data is written to .frm file
Added my_sync() to mysys which will do fsync/fdatasync/_commit() on a file.
Diffstat (limited to 'sql/unireg.cc')
-rw-r--r-- | sql/unireg.cc | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sql/unireg.cc b/sql/unireg.cc index 5183f471fa2..ff42bfae0f0 100644 --- a/sql/unireg.cc +++ b/sql/unireg.cc @@ -150,16 +150,19 @@ int rea_create_table(my_string file_name, my_free((gptr) screen_buff,MYF(0)); my_afree((gptr) keybuff); - VOID(my_close(file,MYF(MY_WME))); - if (ha_create_table(file_name,create_info,0)) + if (my_sync(file, MYF(MY_WME))) goto err2; + if (my_close(file,MYF(MY_WME)) || + ha_create_table(file_name,create_info,0)) + goto err3; DBUG_RETURN(0); err: my_free((gptr) screen_buff,MYF(0)); my_afree((gptr) keybuff); +err2: VOID(my_close(file,MYF(MY_WME))); - err2: +err3: my_delete(file_name,MYF(0)); DBUG_RETURN(1); } /* rea_create_table */ |