summaryrefslogtreecommitdiff
path: root/sql/sql_update.cc
diff options
context:
space:
mode:
authormonty@mysql.com <>2004-03-04 18:16:10 +0200
committermonty@mysql.com <>2004-03-04 18:16:10 +0200
commitb9c4ee353df8eb5257202fac419298b469e624e3 (patch)
tree23e1c598bde21cc2cb86a6228f23c9965a8633f5 /sql/sql_update.cc
parent9c4b9e6df1576fad4fa2cb7e89da2614c282449f (diff)
downloadmariadb-git-b9c4ee353df8eb5257202fac419298b469e624e3.tar.gz
Rollback UPDATE/DELETE statements on kill
nsure that rows in a multi-row INSERT DELAYED are inserted atomicly
Diffstat (limited to 'sql/sql_update.cc')
-rw-r--r--sql/sql_update.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/sql/sql_update.cc b/sql/sql_update.cc
index d2ccd02051b..0a8530aa141 100644
--- a/sql/sql_update.cc
+++ b/sql/sql_update.cc
@@ -238,6 +238,8 @@ int mysql_update(THD *thd,
}
}
}
+ if (thd->killed && !error)
+ error= 1; // Aborted
limit= tmp_limit;
end_read_record(&info);
/* Change select to use tempfile */
@@ -309,6 +311,8 @@ int mysql_update(THD *thd,
else
table->file->unlock_row();
}
+ if (thd->killed && !error)
+ error= 1; // Aborted
end_read_record(&info);
free_io_cache(table); // If ORDER BY
thd->proc_info="end";