You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
BUG#32288105: MYSQL CRASHES IMMEDIATELY AFTER SELECTING FROM
INFORMATION_SCHEMA
ISSUE
Queries on tables executed after querying the INFORMATION_SCHEMA
tables INNODB_TABLES, INNODB_COLUMNS, INNODB_INDEXES,
INNODB_TABLESTATS and INNODB_VIRTUAL can trigger an assert on case
insensitive file system where the lower-case-table-names is set to 2.
ROOT CAUSE
When querying the I_S tables, the function dd_table_open_on_dd_obj()
is called to load the table definition from the DD object. However,
if the table was created with a mixed-case schema or table name,
dd_table_open_on_dd_obj() does not convert the name to lowercase
before adding it to dictionary cache. Subsequent queries look up the
cache using the lowercase name, but since the entry was stored with
mixed casing, it is not found. Hence it tries to add to cache using
dict_table_add_to_cache(). During error checks before adding an entry,
the cache is searched using the table id and finds an entry in the cache
triggering an assert.
FIX
The function dd_table_open_on_dd_obj() is modified to convert the name
to lower case before loading the table definition and adding to the
dictionary cache on case insensitive file sytem.
Change-Id: Id902acfc3622b6af869f5b9dc830d0be58cc09c8
0 commit comments