mariadb/storage/innobase/row
Jan Lindström fc9ff69578 MDEV-13838: Wrong result after altering a partitioned table
Reverted incorrect changes done on MDEV-7367 and MDEV-9469. Fixes properly
also related bugs:

MDEV-13668: InnoDB unnecessarily rebuilds table when renaming a column and adding index
MDEV-9469: 'Incorrect key file' on ALTER TABLE
MDEV-9548: Alter table (renaming and adding index) fails with "Incorrect key file for table"
MDEV-10535: ALTER TABLE causes standalone/wsrep cluster crash
MDEV-13640: ALTER TABLE CHANGE and ADD INDEX on auto_increment column fails with "Incorrect key file for table..."

Root cause for all these bugs is the fact that MariaDB .frm file
can contain virtual columns but InnoDB dictionary does not and
previous fixes were incorrect or unnecessarily forced table
rebuilt. In index creation key_part->fieldnr can be bigger than
number of columns in InnoDB data dictionary. We need to skip not
stored fields when calculating correct column number for InnoDB
data dictionary.

dict_table_get_col_name_for_mysql
        Remove

innobase_match_index_columns
        Revert incorrect change done on MDEV-7367

innobase_need_rebuild
        Remove unnecessary rebuild force when column is renamed.

innobase_create_index_field_def
        Calculate InnoDB column number correctly and remove
        unnecessary column name set.

innobase_create_index_def, innobase_create_key_defs
        Remove unneeded fields parameter. Revert unneeded memset.

prepare_inplace_alter_table_dict
        Remove unneeded col_names parameter

index_field_t
        Remove unneeded col_name member.

row_merge_create_index
        Remove unneeded col_names parameter and resolution.

Effected tests:
         innodb-alter-table : Add test case for MDEV-13668
         innodb-alter : Remove MDEV-13668, MDEV-9469 FIXMEs
                        and restore original tests
         innodb-wl5980-alter : Remove MDEV-13668,  MDEV-9469 FIXMEs
                        and restore original tests
2017-10-10 17:03:40 +03:00
..
row0ext.cc move to storage/innobase 2015-05-04 19:17:21 +02:00
row0ftsort.cc Remove redundant UT_LIST_INIT() calls 2017-05-17 10:33:49 +03:00
row0import.cc MDEV-13899 IMPORT TABLESPACE may corrupt ROW_FORMAT=REDUNDANT tables 2017-09-24 10:11:16 +03:00
row0ins.cc MDEV-13637 InnoDB change buffer housekeeping can cause redo log overrun and possibly deadlocks 2017-08-25 14:01:51 +03:00
row0log.cc Merge remote-tracking branch 'origin/10.0' into 10.0 2017-05-18 15:45:55 +03:00
row0merge.cc MDEV-13838: Wrong result after altering a partitioned table 2017-10-10 17:03:40 +03:00
row0mysql.cc MDEV-13446 fts_create_doc_id() unnecessarily allocates 8 bytes for every inserted row 2017-10-09 12:18:12 +03:00
row0purge.cc Silence bogus GCC 7 warnings -Wimplicit-fallthrough 2017-05-17 08:07:02 +03:00
row0quiesce.cc 5.6.31 2016-06-21 14:21:03 +02:00
row0row.cc 5.6.31 2016-06-21 14:21:03 +02:00
row0sel.cc MDEV-13103 Assertion `flags & BUF_PAGE_PRINT_NO_CRASH' failed in buf_page_print 2017-09-06 14:01:15 +03:00
row0uins.cc MDEV-13637 InnoDB change buffer housekeeping can cause redo log overrun and possibly deadlocks 2017-08-25 14:01:51 +03:00
row0umod.cc MDEV-13637 InnoDB change buffer housekeeping can cause redo log overrun and possibly deadlocks 2017-08-25 14:01:51 +03:00
row0undo.cc 5.6.31 2016-06-21 14:21:03 +02:00
row0upd.cc Merge branch '5.5' into 10.0 2017-03-03 01:37:54 +02:00
row0vers.cc move to storage/innobase 2015-05-04 19:17:21 +02:00