| Bug #89553 | Change the hidden attribute for columns to an ENUM | ||
|---|---|---|---|
| Submitted: | 6 Feb 2018 11:44 | Modified: | 15 Feb 2018 23:07 |
| Reporter: | Erik Frøseth | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: Data Dictionary | Severity: | S3 (Non-critical) |
| Version: | 8.0 | OS: | Any |
| Assigned to: | CPU Architecture: | Any | |
[15 Feb 2018 23:07]
Daniel Price
Posted by developer: Fixed as of the upcoming 8.0.5 release, and here's the changelog entry: An internal field used to mark a column as hidden was changed from a boolean field to an enum field to support additional levels of column visibility.

Description: In order to implement functional indexes, we need to mark a column as hidden from users. We already have a field named "hidden" for columns, but it hides the column completely from the optimizer. We need have a column that is visible to the optimizer, but invisible to the user. The solution is to change the field "hidden" from a BOOL to an ENUM, so we can have different levels of visibility. This will also make it more consistent with the field "hidden" for tables, which already is an ENUM. The current suggestion is to change the field from BOOL to ENUM('VISIBLE', 'INVISIBLE', 'INTERNAL'). The value 'INVISIBLE' will represent what "hidden == true" represents today, but this is subject to change. How to repeat: N/A Suggested fix: N/A