# Tests for PERFORMANCE_SCHEMA --source include/not_embedded.inc --source include/have_perfschema.inc #============================================================================== # This test verifies that the peformance schema storage engine does not support # HANDLER operations. # # Get the list of tables from information_schema.tables, store the table names # in a temporary table. For each table in the list, attempt a HANDLER ... OPEN, # which should return error 1031, "Table storage engine for '' # doesn't have this option." # --echo # --echo # Create a temporary table of performance schema table names --echo # CREATE TEMPORARY TABLE table_list (id INT AUTO_INCREMENT, PRIMARY KEY (id)) AS SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='performance_schema' ORDER BY TABLE_NAME; --enable_prepare_warnings SELECT COUNT(*) FROM table_list INTO @table_count; let $count=`SELECT @table_count`; --echo # --echo # For each table in the performance schema, attempt HANDLER...OPEN, --echo # which should fail with an error 1031, ER_ILLEGAL_HA. --echo # while ($count > 0) { eval SELECT TABLE_NAME INTO @table_name FROM table_list WHERE id=$count; let $table_name = `SELECT @table_name`; --error ER_ILLEGAL_HA eval HANDLER performance_schema.$table_name OPEN; dec $count; } --disable_prepare_warnings DROP TEMPORARY TABLE table_list;