Bug #72371 DICT_TF2_FTS_AUX_HEX_NAME is set for all tables in 5.6.16+
Submitted: 17 Apr 2014 16:44 Modified: 24 Apr 2014 6:45
Reporter: Alexey Kopytov Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server: InnoDB storage engine Severity:S3 (Non-critical)
Version:5.6, 5.7 OS:Any
Assigned to: CPU Architecture:Any

[17 Apr 2014 16:44] Alexey Kopytov
Description:
The following change in MySQL 5.6.16 introduces a new table flag, DICT_TF2_FTS_AUX_HEX_NAME, to the data dictionary:

"InnoDB: On Windows, the full-text search (FTS) object ID was not in the expected hexadecimal format. (Bug #16559254)"

In particular, the flag is set on all newly created tables, even those that have nothing to do to the original problem of the bugfix. Which results in the following warnings on a downgrade:

2014-04-04 23:04:51 7f5ded3f3700 InnoDB: Warning: table 'mysql/innodb_index_stats'
InnoDB: in InnoDB data dictionary has unknown flags 50.
2014-04-04 23:04:51 7f5ded3f3700 InnoDB: Warning: table 'mysql/innodb_table_stats'

The warnings are probably(?) benign, but I wonder if this behavior is intentional in the first place, i.e. does the flag really need to be set on all tables regardless of their purpose?

How to repeat:
Create a regular table on MySQL 5.6.16+. Downgrade to any version < 5.6.16.
[18 Apr 2014 7:19] Umesh Shastry
Hello Alexey,

Thank you for the bug report.
Verified as described.

Thanks,
Umesh
[18 Apr 2014 7:23] Umesh Shastry
// Downgrade from 5.6.17->5.6.15 

2014-04-20 03:17:19 7fa1982f8700  InnoDB: Warning: table 'mysql/innodb_index_stats'
InnoDB: in InnoDB data dictionary has unknown flags 50.
2014-04-20 03:17:19 7fa1982f8700  InnoDB: Warning: table 'mysql/innodb_table_stats'
InnoDB: in InnoDB data dictionary has unknown flags 50.
2014-04-20 03:17:20 7fa1982f8700  InnoDB: Warning: table 'test/t1'
InnoDB: in InnoDB data dictionary has unknown flags 50.
[18 Apr 2014 8:58] Bin Su
Hi Alexey,

Thanks for your report.

The DICT_TF2_FTS_AUX_HEX_NAME is used to indicate that all the aux tables of a
parent table are in hex format. It's marked when a table is newly created or
it's upgraded from an old ambiguous table before patch of bug16559254.

We do expect the flag set for newly created tables, to distinguish them from old tables without this flag. So that we can do 'ALTER TABLE' correctly in the future.

Thanks.