mirror of
https://github.com/MariaDB/server.git
synced 2025-08-16 15:31:32 +02:00
![]() FIXME: commit message invisible property in Alter_column and add_alter_alter_list(). mysql_prepare_alter_table() takes this value for new column definition. Vers_parse_info::fix_alter_info() is more fine-grained on throwing ER_VERS_ALTER_SYSTEM_FIELD. Now it does not fail on visibility change. mysqltest: At line 78: query 'alter table t add column trx_start timestamp(6) as row start' succeeded - should have failed with error ER_MISSING (4125)... In Vers_parse_info::fix_alter_info() we override data from parser: 9059 as_row= start_end_t(start, end); 9060 period= as_row; Then Vers_parse_info::check_conditions() fails to find error: 9180 if (!as_row.start || !as_row.end) 9181 { 9182 my_error(ER_MISSING, MYF(0), table_name.str, 9183 as_row.start ? "AS ROW END" : "AS ROW START"); 9184 return true; 9185 } But as_row is used when creating frm: 529 if (create_info->versioned()) 530 { 531 *pos++= EXTRA2_PERIOD_FOR_SYSTEM_TIME; 532 *pos++= 2 * frm_fieldno_size; 533 store_frm_fieldno(pos, get_fieldno_by_name(create_info, create_fields, 534 create_info->vers_info.as_row.start)); 535 pos+= frm_fieldno_size; 536 store_frm_fieldno(pos, get_fieldno_by_name(create_info, create_fields, 537 create_info->vers_info.as_row.end)); 538 pos+= frm_fieldno_size; 539 } There should be other info for it to take start/end indexes. Parser stage and prepare stage data separation. Vers_parse_info::as_row and period are left untouched (the exception is fix_create_like() where as_row |
||
---|---|---|
.. | ||
archive | ||
atomic | ||
binlog | ||
binlog_encryption | ||
client | ||
compat | ||
csv | ||
encryption | ||
engines | ||
events | ||
federated | ||
funcs_1 | ||
funcs_2 | ||
galera | ||
galera_3nodes | ||
galera_3nodes_sr | ||
galera_sr | ||
gcol | ||
handler | ||
heap | ||
innodb | ||
innodb_fts | ||
innodb_gis | ||
innodb_i_s | ||
innodb_zip | ||
jp | ||
json | ||
large_tests | ||
maria | ||
mariabackup | ||
merge | ||
mtr/t | ||
mtr2 | ||
multi_source | ||
optimizer_unfixed_bugs | ||
parts | ||
perfschema | ||
perfschema_stress | ||
period | ||
plugins | ||
roles | ||
rpl | ||
s3 | ||
sql_sequence | ||
storage_engine | ||
stress | ||
sys_vars | ||
sysschema | ||
unit | ||
vcol | ||
versioning | ||
wsrep |