diff options
author | Aleksey Midenkov <midenok@gmail.com> | 2019-11-25 16:01:43 +0300 |
---|---|---|
committer | Aleksey Midenkov <midenok@gmail.com> | 2019-11-25 16:01:43 +0300 |
commit | 33f55789d354b0fccf5234027dc0bd66cbd0c539 (patch) | |
tree | c223a494f81a6adb384a2e7e3e0323b8992fcef5 /sql/table.h | |
parent | 4111a53079da9850c630ce30eec7f8a38744eacd (diff) | |
download | mariadb-git-33f55789d354b0fccf5234027dc0bd66cbd0c539.tar.gz |
MDEV-18727 improve DML operation of System Versioning (10.4)
UPDATE, DELETE: replace linear search of current/historical records
with vers_setup_conds().
Additional DML cases in view.test
Diffstat (limited to 'sql/table.h')
-rw-r--r-- | sql/table.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sql/table.h b/sql/table.h index 700c5f036fd..ae46b192854 100644 --- a/sql/table.h +++ b/sql/table.h @@ -1930,6 +1930,7 @@ struct vers_select_conds_t { vers_system_time_t type; bool used:1; + bool delete_history:1; Vers_history_point start; Vers_history_point end; Lex_ident name; @@ -1943,6 +1944,7 @@ struct vers_select_conds_t { type= SYSTEM_TIME_UNSPECIFIED; used= false; + delete_history= false; start.empty(); end.empty(); } @@ -1954,6 +1956,8 @@ struct vers_select_conds_t { type= _type; used= false; + delete_history= (type == SYSTEM_TIME_HISTORY || + type == SYSTEM_TIME_BEFORE); start= _start; end= _end; name= _name; |