mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Fix for bug #8164: subquery with INFORMATION_SCHEMA.COLUMNS, 100 % CPU
This commit is contained in:
@ -631,3 +631,10 @@ TABLES UPDATE_TIME datetime
|
||||
TABLES CHECK_TIME datetime
|
||||
ROUTINES CREATED datetime
|
||||
ROUTINES LAST_ALTERED datetime
|
||||
SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES A
|
||||
WHERE NOT EXISTS
|
||||
(SELECT * FROM INFORMATION_SCHEMA.COLUMNS B
|
||||
WHERE A.TABLE_SCHEMA = B.TABLE_SCHEMA
|
||||
AND A.TABLE_NAME = B.TABLE_NAME);
|
||||
COUNT(*)
|
||||
0
|
||||
|
@ -400,3 +400,12 @@ information_schema.columns
|
||||
where data_type = 'longtext';
|
||||
select table_name, column_name, data_type from information_schema.columns
|
||||
where data_type = 'datetime';
|
||||
|
||||
#
|
||||
# Bug #8164 subquery with INFORMATION_SCHEMA.COLUMNS, 100 % CPU
|
||||
#
|
||||
SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES A
|
||||
WHERE NOT EXISTS
|
||||
(SELECT * FROM INFORMATION_SCHEMA.COLUMNS B
|
||||
WHERE A.TABLE_SCHEMA = B.TABLE_SCHEMA
|
||||
AND A.TABLE_NAME = B.TABLE_NAME);
|
||||
|
@ -1649,6 +1649,10 @@ bool uses_only_table_name_fields(Item *item, TABLE_LIST *table)
|
||||
strlen(item_field->field_name), 0)))
|
||||
return 0;
|
||||
}
|
||||
if (item->type() == Item::SUBSELECT_ITEM &&
|
||||
!item->const_item())
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user