From ef00ac4c86daf3294c46a45358da636763fb0049 Mon Sep 17 00:00:00 2001 From: Alexander Barkov Date: Thu, 29 Aug 2019 12:35:19 +0400 Subject: Part2: MDEV-18156 Assertion `0' failed or `btr_validate_index(index, 0, false)' in row_upd_sec_index_entry or error code 126: Index is corrupted upon DELETE with PAD_CHAR_TO_FULL_LENGTH This patch allows the server to open old tables that have "bad" generated columns (i.e. indexed virtual generated columns, persistent generated columns) that depend on sql_mode, for general things like SELECT, INSERT, DROP, etc. Warning are issued in such cases. Only these commands are now disallowed and return an error: - CREATE TABLE introducing a "bad" generated column - ALTER TABLE introducing a "bad" generated column - CREATE INDEX introdicing a "bad" generated column (i.e. adding an index on a virtual generated column that depends on sql_mode). Note, these commands are allowed: - ALTER TABLE removing a "bad" generate column - ALTER TABLE removing an index from a "bad" virtual generated column - DROP INDEX removing an index from a "bad" virtual generated column but only if the table does not have any "bad" columns as a result. --- .../vcol_upgrade/maria100226_char_to_vchar_virtual.MYD | Bin 0 -> 60 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 mysql-test/std_data/vcol_upgrade/maria100226_char_to_vchar_virtual.MYD (limited to 'mysql-test/std_data/vcol_upgrade/maria100226_char_to_vchar_virtual.MYD') diff --git a/mysql-test/std_data/vcol_upgrade/maria100226_char_to_vchar_virtual.MYD b/mysql-test/std_data/vcol_upgrade/maria100226_char_to_vchar_virtual.MYD new file mode 100644 index 00000000000..e770e42b6bf Binary files /dev/null and b/mysql-test/std_data/vcol_upgrade/maria100226_char_to_vchar_virtual.MYD differ -- cgit v1.2.1