summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOleksandr Byelkin <sanja@mariadb.com>2019-10-30 14:47:35 +0100
committerOleksandr Byelkin <sanja@mariadb.com>2019-10-30 14:47:35 +0100
commitd671f506b0e67b951be60d61236ca8a44953d407 (patch)
tree0d8068a11ac9541ab3889ea7fd0cec8299e6bd99
parent708d46158b7f20b702734990cc63f08abaf27443 (diff)
parent9277b6ec1ce8bc195a10b5deb11d65843adf8972 (diff)
downloadmariadb-git-d671f506b0e67b951be60d61236ca8a44953d407.tar.gz
Merge branch '5.5' into 10.1
-rw-r--r--client/mysql.cc13
-rw-r--r--storage/heap/ha_heap.cc4
-rw-r--r--storage/heap/hp_close.c6
3 files changed, 6 insertions, 17 deletions
diff --git a/client/mysql.cc b/client/mysql.cc
index c7c902456cf..31c1d443607 100644
--- a/client/mysql.cc
+++ b/client/mysql.cc
@@ -1401,21 +1401,12 @@ sig_handler handle_sigint(int sig)
char kill_buffer[40];
MYSQL *kill_mysql= NULL;
- /* Terminate if we already tried interrupting. */
- if (interrupted_query == 2)
+ /* terminate if no query being executed, or we already tried interrupting */
+ if (!executing_query || (interrupted_query == 2))
{
tee_fprintf(stdout, "Ctrl-C -- exit!\n");
goto err;
}
- /* If no query being executed, don't exit. */
- if (!executing_query)
- {
- tee_fprintf(stdout, "Ctrl-C\n");
- rl_on_new_line(); // Regenerate the prompt on a newline
- rl_replace_line("", 0); // Clear the previous text
- rl_redisplay();
- return;
- }
kill_mysql= mysql_init(kill_mysql);
if (!do_connect(kill_mysql,current_host, current_user, opt_password, "", 0))
diff --git a/storage/heap/ha_heap.cc b/storage/heap/ha_heap.cc
index 35a0dd108e6..102293fc801 100644
--- a/storage/heap/ha_heap.cc
+++ b/storage/heap/ha_heap.cc
@@ -431,6 +431,10 @@ int ha_heap::reset_auto_increment(ulonglong value)
int ha_heap::external_lock(THD *thd, int lock_type)
{
+#ifndef DBUG_OFF
+ if (lock_type == F_UNLCK && file->s->changed && heap_check_heap(file, 0))
+ return HA_ERR_CRASHED;
+#endif
return 0; // No external locking
}
diff --git a/storage/heap/hp_close.c b/storage/heap/hp_close.c
index 092048a7c1c..82d6186340a 100644
--- a/storage/heap/hp_close.c
+++ b/storage/heap/hp_close.c
@@ -35,12 +35,6 @@ int hp_close(register HP_INFO *info)
{
int error=0;
DBUG_ENTER("hp_close");
-#ifndef DBUG_OFF
- if (info->s->changed && heap_check_heap(info,0))
- {
- error=my_errno=HA_ERR_CRASHED;
- }
-#endif
info->s->changed=0;
if (info->open_list.data)
heap_open_list=list_delete(heap_open_list,&info->open_list);