summaryrefslogtreecommitdiff
path: root/client/mysqltest.c
diff options
context:
space:
mode:
Diffstat (limited to 'client/mysqltest.c')
-rw-r--r--client/mysqltest.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/client/mysqltest.c b/client/mysqltest.c
index e2d2f0f45a6..8aef19f600b 100644
--- a/client/mysqltest.c
+++ b/client/mysqltest.c
@@ -416,6 +416,8 @@ void verbose_msg(const char *fmt, ...)
ATTRIBUTE_FORMAT(printf, 1, 2);
void warning_msg(const char *fmt, ...)
ATTRIBUTE_FORMAT(printf, 1, 2);
+void log_msg(const char *fmt, ...)
+ ATTRIBUTE_FORMAT(printf, 1, 2);
VAR* var_from_env(const char *, const char *);
VAR* var_init(VAR* v, const char *name, int name_len, const char *val,
@@ -578,6 +580,7 @@ void do_eval(DYNAMIC_STRING *query_eval, const char *query,
dynstr_append_mem(query_eval, p, 1);
break;
default:
+ escaped= 0;
dynstr_append_mem(query_eval, p, 1);
break;
}
@@ -943,6 +946,25 @@ void warning_msg(const char *fmt, ...)
}
+void log_msg(const char *fmt, ...)
+{
+ va_list args;
+ char buff[512];
+ size_t len;
+ DBUG_ENTER("log_msg");
+
+ memset(buff, 0, sizeof(buff));
+ va_start(args, fmt);
+ len= my_vsnprintf(buff, sizeof(buff)-1, fmt, args);
+ va_end(args);
+
+ dynstr_append_mem(&ds_res, buff, len);
+ dynstr_append(&ds_res, "\n");
+
+ DBUG_VOID_RETURN;
+}
+
+
/*
Compare content of the string ds to content of file fname
*/
@@ -1615,7 +1637,11 @@ void do_exec(struct st_command *command)
my_bool ok= 0;
if (command->abort_on_error)
+ {
+ log_msg("exec of '%s failed, error: %d, status: %d, errno: %d",
+ ds_cmd.str, error, status, errno);
die("command \"%s\" failed", command->first_argument);
+ }
DBUG_PRINT("info",
("error: %d, status: %d", error, status));
@@ -1639,6 +1665,8 @@ void do_exec(struct st_command *command)
command->expected_errors.err[0].code.errnum != 0)
{
/* Error code we wanted was != 0, i.e. not an expected success */
+ log_msg("exec of '%s failed, error: %d, errno: %d",
+ ds_cmd.str, error, errno);
die("command \"%s\" succeeded - should have failed with errno %d...",
command->first_argument, command->expected_errors.err[0].code.errnum);
}