Bug #94667 Disable validation of SE private data keys from the SQL layer
Submitted: 15 Mar 2019 8:19 Modified: 10 Apr 2019 13:50
Reporter: Sivert Sørumgård Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Data Dictionary Severity:S3 (Non-critical)
Version:8.0.15 OS:Any
Assigned to: CPU Architecture:Any

[15 Mar 2019 8:19] Sivert Sørumgård
Description:
The data dictionary can store meta data as key-value pairs for e.g. option-like fields. This is also done for columns named 'se_private_data', containing data needed by the various SEs. We have implemented a mechanism to validate the key names that are used to make sure invalid keys are not used by accident. This mechanism is also applied to the 'se_private_date'. However, the set of valid 'se_private_data' keys is specified at build time, and this breaks the principle of allowing SEs to decide on their own which keys to use.

See also the externally reported Bug#94307.

How to repeat:
If using a 3rd part SE needing new keys for SE private data, validation will kick in and refuse the new key.

Suggested fix:
Disable the validation of keys for the various 'se_private_data' fields from the SQL layer.
[10 Apr 2019 13:50] Daniel Price
Posted by developer:
 
Fixed as of the upcoming 8.0.17 release, and here's the changelog entry:

SQL layer validation of keys stored in storage-engine-private data fields
in the data dictionary was disabled to permit storage engines to add new
keys as required. Storage engines are now responsible for key validation.