48 lines
2.3 KiB
SQL
48 lines
2.3 KiB
SQL
--echo # Resource groups that require DEBUG builds.
|
|
|
|
--echo # Test Resource Group Hints Feature
|
|
CREATE RESOURCE GROUP r1 TYPE=USER VCPU=0,1;
|
|
SET GLOBAL DEBUG='+d,pause_after_rg_switch';
|
|
--connect (con1,localhost,root,,)
|
|
--send SELECT /*+ RESOURCE_GROUP(r1) */ 1;
|
|
--connection default
|
|
SET DEBUG_SYNC= 'now WAIT_FOR execute_pfs_select';
|
|
SELECT COUNT(*) = 1 FROM performance_schema.threads WHERE RESOURCE_GROUP='r1';
|
|
SET DEBUG_SYNC= 'now SIGNAL signal_to_continue';
|
|
--connection con1
|
|
reap;
|
|
|
|
--connection default
|
|
SET DEBUG_SYNC= 'now WAIT_FOR restore_finished';
|
|
--echo # There should be no thread associated with r1 once query execution is complete.
|
|
SELECT COUNT(*) = 1 FROM performance_schema.threads WHERE RESOURCE_GROUP='r1';
|
|
SET GLOBAL DEBUG='-d,pause_after_rg_switch';
|
|
--disconnect con1
|
|
DROP RESOURCE GROUP r1;
|
|
|
|
|
|
--echo # Restart with an Invalid Resource group.
|
|
SET SESSION debug= '+d,skip_dd_table_access_check';
|
|
if ($thr_prio_enable == 1)
|
|
{
|
|
# Insert invalid thread priority value along with invalid VCPU ranges
|
|
# and enable the resource group.
|
|
INSERT INTO mysql.resource_groups VALUES(3, 'r1', 'USER', 1, "0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", -5, NULL);
|
|
}
|
|
|
|
if ($thr_prio_enable == 0)
|
|
{
|
|
# Insert invalid VCPU ids and enable the resource group.
|
|
INSERT INTO mysql.resource_groups VALUES(3, 'r1', 'USER', 1, "0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", 0, NULL);
|
|
}
|
|
call mtr.add_suppression("Invalid cpu id.*");
|
|
call mtr.add_suppression("Validation of resource group.*");
|
|
call mtr.add_suppression("Invalid thread priority.*");
|
|
SET SESSION debug= '-d,skip_dd_table_access_check';
|
|
--echo "Restarting the server."
|
|
--source include/restart_mysqld.inc
|
|
|
|
--echo # The resource group should be in disabled along with warnings about invalid values.
|
|
SELECT * FROM INFORMATION_SCHEMA.RESOURCE_GROUPS WHERE RESOURCE_GROUP_NAME="r1";
|
|
DROP RESOURCE GROUP r1;
|