diff options
author | Sachin Setiya <sachin.setiya@mariadb.com> | 2018-02-01 18:58:55 +0530 |
---|---|---|
committer | Sachin Setiya <sachin.setiya@mariadb.com> | 2018-02-01 18:58:55 +0530 |
commit | 909a47b0edc6ac84d6345e95e7dde779186b1dbf (patch) | |
tree | de6cee4359fc8c26d147a072011031699f02db6b /sql/sql_table.cc | |
parent | f756bb21c53faf15d91f1896cf0787fce813356c (diff) | |
download | mariadb-git-bb-mdev-14849.tar.gz |
This commit solves a couple of issuesbb-mdev-14849
1st. Create_field does not have function vers_sys_field() kind of handy
function, second I think Create_field and Field should not divert much , and
Field does have this function.
2nd. Versioning column does not have NOT_NULL_FLAG, since they can never be
null. So I have added NOT_NULL_FLAG.
3rd. Since I added NOT_NULL_FLAG this created one issue , versioning column
of datatype bigint unsigned were getting NO_DEFAULT_VALUE_FLAG. This makes
test like versioning.insert to fail, Reason being If a column gets this
flag if we insert 'default' value it will generate error(that is why ) test
was failing. So now versioning column wont get NO_DEFAULT_VALUE_FLAG flag.
Diffstat (limited to 'sql/sql_table.cc')
-rw-r--r-- | sql/sql_table.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sql/sql_table.cc b/sql/sql_table.cc index 16bd1dc0bf0..1ad9be1ea93 100644 --- a/sql/sql_table.cc +++ b/sql/sql_table.cc @@ -4206,7 +4206,8 @@ mysql_prepare_create_table(THD *thd, HA_CREATE_INFO *create_info, !sql_field->has_default_function() && (sql_field->flags & NOT_NULL_FLAG) && (!sql_field->is_timestamp_type() || - opt_explicit_defaults_for_timestamp)) + opt_explicit_defaults_for_timestamp)&& + !sql_field->vers_sys_field()) { sql_field->flags|= NO_DEFAULT_VALUE_FLAG; sql_field->pack_flag|= FIELDFLAG_NO_DEFAULT; |