diff options
author | Igor Babaev <igor@askmonty.org> | 2019-02-13 14:59:34 -0800 |
---|---|---|
committer | Igor Babaev <igor@askmonty.org> | 2019-02-13 14:59:34 -0800 |
commit | 7d9f45e0729ea9b2f572cfb4023b28c16ab11145 (patch) | |
tree | 040e8f220c289652612c6cda14d277435c25ac49 /sql/handler.h | |
parent | 62fad4e8e964786cd1c8d675f3c071a405a8d187 (diff) | |
parent | a081a998a62eb0663b5691d0b5c0607465f15c0f (diff) | |
download | mariadb-git-bb-10.4-mdev17096.tar.gz |
Merge branch '10.4' into bb-10.4-mdev17096bb-10.4-mdev17096
Diffstat (limited to 'sql/handler.h')
-rw-r--r-- | sql/handler.h | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/sql/handler.h b/sql/handler.h index 350d881a934..31abb4699ca 100644 --- a/sql/handler.h +++ b/sql/handler.h @@ -2,7 +2,7 @@ #define HANDLER_INCLUDED /* Copyright (c) 2000, 2016, Oracle and/or its affiliates. - Copyright (c) 2009, 2018, MariaDB + Copyright (c) 2009, 2019, MariaDB This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License @@ -319,6 +319,11 @@ enum enum_alter_inplace_result { /* Safe for online backup */ #define HA_CAN_ONLINE_BACKUPS (1ULL << 56) +/** whether every data field explicitly stores length +(holds for InnoDB ROW_FORMAT=REDUNDANT) */ +#define HA_EXTENDED_TYPES_CONVERSION (1ULL << 57) +#define HA_LAST_TABLE_FLAG HA_EXTENDED_TYPES_CONVERSION + /* bits in index_flags(index_number) for what you can do with index */ #define HA_READ_NEXT 1 /* TODO really use this flag */ #define HA_READ_PREV 2 /* supports ::index_prev */ @@ -741,6 +746,14 @@ typedef ulonglong alter_table_operations; */ #define ALTER_COLUMN_INDEX_LENGTH (1ULL << 60) +/** + Change the column length or type such that no rebuild is needed. + Only set if ALTER_COLUMN_EQUAL_PACK_LENGTH does not apply, and + if HA_EXTENDED_TYPES_CONVERSION holds. + @see IS_EQUAL_PACK_LENGTH_EXT +*/ +#define ALTER_COLUMN_EQUAL_PACK_LENGTH_EXT (1ULL << 61) + /* Flags set in partition_flags when altering partitions */ @@ -3158,7 +3171,11 @@ public: /** The cached_table_flags is set at ha_open and ha_external_lock */ - Table_flags ha_table_flags() const { return cached_table_flags; } + Table_flags ha_table_flags() const + { + DBUG_ASSERT(cached_table_flags < (HA_LAST_TABLE_FLAG << 1)); + return cached_table_flags; + } /** These functions represent the public interface to *users* of the handler class, hence they are *not* virtual. For the inheritance |