mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-20949 Stop issuing 'row size' error on DML
Move row size check to early CREATE/ALTER TABLE phase. Stop checking on table open. dict_index_add_to_cache(): remove parameter 'strict', stop checking row size dict_index_t::record_size_info_t: this is a result of row size check operation create_table_info_t::row_size_is_acceptable(): performs row size check. Issues error or warning. Writes first overflow field to InnoDB log. create_table_info_t::create_table(): add row size check dict_index_t::record_size_info(): this is a refactored version of dict_index_t::rec_potentially_too_big(). New version doesn't change global state of a program but return all interesting info. And it's callers who decide how to handle row size overflow. dict_index_t::rec_potentially_too_big(): removed
This commit is contained in:
@ -1,5 +1,7 @@
|
||||
-- source include/innodb_page_size_small.inc
|
||||
|
||||
call mtr.add_suppression('InnoDB: Cannot add field.*because after adding it, the row size is');
|
||||
|
||||
let $file_per_table=`select @@innodb_file_per_table`;
|
||||
|
||||
SET GLOBAL innodb_file_per_table=on;
|
||||
|
@ -15,6 +15,8 @@
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_innodb_16k.inc
|
||||
|
||||
call mtr.add_suppression('InnoDB: Cannot add field.*because after adding it, the row size is');
|
||||
|
||||
SET @large_prefix_orig = @@GLOBAL.innodb_large_prefix;
|
||||
|
||||
# Prefix index with VARCHAR data type , primary/secondary index and DML ops
|
||||
|
Reference in New Issue
Block a user