mirror of
https://github.com/MariaDB/server.git
synced 2025-01-15 19:42:28 +01:00
Bug #41057: mysql_update fails FATAL ERROR: Failed to create temporary file for defaults
mysql_upgrade was passing an non-initialized non-null tmpdir to create_temp_file() if no --tmpdir was specified. This prevents create_temp_file() from taking the system temporary file path and as a result mysql_upgrade was trying to open a file in a directory that it may not have write access to. Fixed by making sure mysql_upgrade will pass a zero length temp dir string to create_temp_file() if no --tmpdir is specified.
This commit is contained in:
parent
d0bb5465b8
commit
df8642b212
1 changed files with 3 additions and 2 deletions
|
@ -44,7 +44,7 @@ static DYNAMIC_STRING conn_args;
|
|||
static char *opt_password= 0;
|
||||
static my_bool tty_password= 0;
|
||||
|
||||
static char opt_tmpdir[FN_REFLEN];
|
||||
static char opt_tmpdir[FN_REFLEN] = "";
|
||||
|
||||
#ifndef DBUG_OFF
|
||||
static char *default_dbug_option= (char*) "d:t:O,/tmp/mysql_upgrade.trace";
|
||||
|
@ -459,7 +459,8 @@ static int run_query(const char *query, DYNAMIC_STRING *ds_res,
|
|||
|
||||
DBUG_ENTER("run_query");
|
||||
DBUG_PRINT("enter", ("query: %s", query));
|
||||
if ((fd= create_temp_file(query_file_path, opt_tmpdir,
|
||||
if ((fd= create_temp_file(query_file_path,
|
||||
opt_tmpdir[0] ? opt_tmpdir : NULL,
|
||||
"sql", O_CREAT | O_SHARE | O_RDWR,
|
||||
MYF(MY_WME))) < 0)
|
||||
die("Failed to create temporary file for defaults");
|
||||
|
|
Loading…
Reference in a new issue