diff options
author | Aleksey Midenkov <midenok@gmail.com> | 2018-08-28 19:45:34 +0300 |
---|---|---|
committer | Aleksey Midenkov <midenok@gmail.com> | 2019-09-30 14:05:09 +0300 |
commit | 58fdf5b2fa57188deb9dad3412b480049b0fdcb8 (patch) | |
tree | 7de90543fb1c1ea0ee01cb29cb9a645265557c74 /sql/handler.h | |
parent | f610529d230f080681b6979880225aebc248bf91 (diff) | |
download | mariadb-git-58fdf5b2fa57188deb9dad3412b480049b0fdcb8.tar.gz |
MDEV-16144 Default TIMESTAMP clause for SELECT from versioned
1. Removed TIMESTAMP/TRANSACTION unit auto-detection in favor of default TIMESTAMP.
Reasons:
1.1. rare practical use and doubtful advantage of such auto-detection;
1.2. it conflicts with MDEV-16226 (TRX_ID-based versioned tables performance improvement).
Needless check_unit membership removed.
2. SQL: versioning type handling refactoring
Vers_type_handler hierarchy stores versioning properties of type.
virtual Type_handler::vers() accesses specialization of
Vers_type_handler for specific type.
virtual Vers_type_handler::kind() returns versioning kind
(timestamp/trx_id).
Removed Type_handler::Vers_history_point_check_unit() in favor of
Type_handler::vers().
Renames:
require_timestamp() -> require_timestamp_error()
require_trx_id() -> require_trx_id_error()
EDIT by Alexander Barkov (@abarkov):
check_sys_fields() moved to Vers_type_handler::check_sys_fields()
Diffstat (limited to 'sql/handler.h')
-rw-r--r-- | sql/handler.h | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/sql/handler.h b/sql/handler.h index 89af002b1dc..b20ecdd8d37 100644 --- a/sql/handler.h +++ b/sql/handler.h @@ -1962,13 +1962,6 @@ struct Schema_specification_st class Create_field; -enum vers_sys_type_t -{ - VERS_UNDEFINED= 0, - VERS_TIMESTAMP, - VERS_TRX_ID -}; - struct Table_period_info: Sql_alloc { Table_period_info() : @@ -2051,8 +2044,7 @@ public: bool fix_create_like(Alter_info &alter_info, HA_CREATE_INFO &create_info, TABLE_LIST &src_table, TABLE_LIST &table); bool check_sys_fields(const Lex_table_name &table_name, - const Lex_table_name &db, Alter_info *alter_info, - bool can_native) const; + const Lex_table_name &db, Alter_info *alter_info) const; /** At least one field was specified 'WITH/WITHOUT SYSTEM VERSIONING'. |