1
0
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:
unknown
2005-03-03 19:20:16 +03:00
parent 66d2d13a8e
commit c7fdbffa0d
3 changed files with 20 additions and 0 deletions

View File

@ -631,3 +631,10 @@ TABLES UPDATE_TIME datetime
TABLES CHECK_TIME datetime TABLES CHECK_TIME datetime
ROUTINES CREATED datetime ROUTINES CREATED datetime
ROUTINES LAST_ALTERED 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

View File

@ -400,3 +400,12 @@ information_schema.columns
where data_type = 'longtext'; where data_type = 'longtext';
select table_name, column_name, data_type from information_schema.columns select table_name, column_name, data_type from information_schema.columns
where data_type = 'datetime'; 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);

View File

@ -1649,6 +1649,10 @@ bool uses_only_table_name_fields(Item *item, TABLE_LIST *table)
strlen(item_field->field_name), 0))) strlen(item_field->field_name), 0)))
return 0; return 0;
} }
if (item->type() == Item::SUBSELECT_ITEM &&
!item->const_item())
return 0;
return 1; return 1;
} }