diff options
author | Monty <monty@mariadb.org> | 2020-08-27 13:09:49 +0300 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2021-05-19 22:27:27 +0200 |
commit | c76eabfb5e39a1b0831159decd3e0b544b9ad2e3 (patch) | |
tree | 00947044367f2fb5ae9699f0a2741a58bf50ddf7 /sql/item_strfunc.h | |
parent | 8e8bda7fd3a47b13c43a7ad11a23af7dc72cd784 (diff) | |
download | mariadb-git-c76eabfb5e39a1b0831159decd3e0b544b9ad2e3.tar.gz |
Improved storage size for Item, Field and some other classes
- Changed order of class fields to remove dead alignment space.
- Changed bool fields in Item to bit fields.
- Used packed enum's for some fields in common classes
- Removed not used Item::rsize.
- Changed some class variables from uint/int to smaller type int's.
- Ensured that field_index is uint16 in all classes and functions. Fixed
also that we proparly compare with NO_CACHED_FIELD_INDEX when checking
if variable is not set.
- Removed checking of highest bit of unireg_check (has not been used in
a long time)
- Fixed wrong arguments to make_cond_for_table() for join_tab_idx_arg
from false to 0.
One of the result was reducing the size if class Item with ~24 bytes
Diffstat (limited to 'sql/item_strfunc.h')
-rw-r--r-- | sql/item_strfunc.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sql/item_strfunc.h b/sql/item_strfunc.h index 36300e57f03..70a23ebf294 100644 --- a/sql/item_strfunc.h +++ b/sql/item_strfunc.h @@ -879,7 +879,8 @@ public: bool fix_length_and_dec() { max_length= 512 * system_charset_info->mbmaxlen; - null_value= maybe_null= false; + null_value= false; + maybe_null= false; return FALSE; } Item *get_copy(THD *thd) |