diff options
author | Igor Babaev <igor@askmonty.org> | 2022-06-18 00:49:15 -0700 |
---|---|---|
committer | Igor Babaev <igor@askmonty.org> | 2022-06-18 00:49:15 -0700 |
commit | 2f09d93bc4054a965178f1a1d953924f09739b56 (patch) | |
tree | 7f02ea6d1d7c0e9a41ea6267fe5eac4989a23c55 /sql/handler.h | |
parent | d371e35257c45895318c4efbed20e5bfdcc7cee9 (diff) | |
download | mariadb-git-bb-10.10-mdev-28883.tar.gz |
MDEV-27159 Re-design the upper level of handling DML commandsbb-10.10-mdev-28883
This patch allows to execute only single-table and multi-table
UPDATE and DELETE statements using the method Sql_cmd_dml::execute().
The code that handles INSERT statements has not been touched.
Diffstat (limited to 'sql/handler.h')
-rw-r--r-- | sql/handler.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sql/handler.h b/sql/handler.h index 60c6195e68e..efc75d7281c 100644 --- a/sql/handler.h +++ b/sql/handler.h @@ -246,7 +246,7 @@ enum chf_create_flags { Example: UPDATE a=1 WHERE pk IN (<keys>) - mysql_update() + Sql_cmd_update::update_single_table() { if (<conditions for starting read removal>) start_read_removal() @@ -1800,7 +1800,8 @@ struct THD_TRANS modified non-transactional tables of top-level statements. At the end of the previous statement and at the beginning of the session, it is reset to FALSE. If such functions - as mysql_insert, mysql_update, mysql_delete etc modify a + as mysql_insert(), Sql_cmd_update::update_single_table, + Sql_cmd_delete::delete_single_table modify a non-transactional table, they set this flag to TRUE. At the end of the statement, the value of stmt.modified_non_trans_table is merged with all.modified_non_trans_table and gets reset. |