summaryrefslogtreecommitdiff
path: root/sql/table.cc
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2021-11-09 08:50:33 +0200
committerMarko Mäkelä <marko.makela@mariadb.com>2021-11-09 08:50:33 +0200
commit9c18b9660302a76a6ff9bd505888048a13586a4c (patch)
tree8f0cd57e97ccca5f633825863e9e0f8e705ed8ff /sql/table.cc
parentd8d6e995282dd9485f65517efbb684eabaf52322 (diff)
parent47ab793d71f2755b026672e4657174a1740b6ae2 (diff)
downloadmariadb-git-9c18b9660302a76a6ff9bd505888048a13586a4c.tar.gz
Merge 10.4 into 10.5
Diffstat (limited to 'sql/table.cc')
-rw-r--r--sql/table.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/sql/table.cc b/sql/table.cc
index e06c4db81f0..007c8c7cc1a 100644
--- a/sql/table.cc
+++ b/sql/table.cc
@@ -1106,6 +1106,8 @@ static void mysql57_calculate_null_position(TABLE_SHARE *share,
}
}
+static bool fix_and_check_vcol_expr(THD *thd, TABLE *table,
+ Virtual_column_info *vcol);
/** Parse TABLE_SHARE::vcol_defs
@@ -1297,6 +1299,9 @@ bool parse_vcol_defs(THD *thd, MEM_ROOT *mem_root, TABLE *table,
Virtual_column_info *v= new (mem_root) Virtual_column_info();
field->vcol_info= v;
field->vcol_info->expr= hash_item;
+ field->vcol_info->set_vcol_type(VCOL_USING_HASH);
+ if (fix_and_check_vcol_expr(thd, table, v))
+ goto end;
key->user_defined_key_parts= key->ext_key_parts= key->usable_key_parts= 1;
key->key_part+= parts;