polardbxengine/mysql-test/suite/special/t/innodb_dedicated_server_gco...

78 lines
4.6 KiB
Plaintext

#####################################################################################
# Test for autoscaling based on innodb_dedicated_server variable. #
# #
# #
# This test checks autoscaling of following variables based on value of #
# innodb_dedicated_server option #
# - innodb_buffer_pool_size #
# - innodb_log_file_size #
# - innodb_log_files_in_group #
# #
# This test also does basic testing for new variable innodb_dedicated_server #
#####################################################################################
# Make sure to run only on Linux
--source include/linux.inc
# Make sure this test is not run on PB2 machines
--source include/is_local_machine.inc
# Make sure that there are no other tests running in parallel
--source include/not_parallel.inc
# Make sure UNIV_DEBUG_DEDICATED is defined and debug_sys_mem_size is available
let $have_debug_dedicated = `SELECT * FROM performance_schema.global_variables where VARIABLE_NAME LIKE "%debug_sys_mem_size%"`;
if (!$have_debug_dedicated) {
--skip Test requires 'debug_dedicated'
}
--disable_query_log
call mtr.add_suppression("\\[Warning\\] .*MY-\\d+.* Resizing redo log");
call mtr.add_suppression("\\[Warning\\] .*MY-\\d+.* Starting to delete and rewrite log files.");
call mtr.add_suppression("\\[Warning\\] .*MY-\\d+.* New log files created");
call mtr.add_suppression("\\[Warning\\] .*MY-\\d+.* Option innodb_dedicated_server is ignored ");
call mtr.add_suppression("\\[Warning\\] .*MY-\\d+.* No argument was provided to --log-bin, and --log-bin-index was not used");
call mtr.add_suppression("\\[Warning\\] .*MY-\\d+.* option 'innodb-buffer-pool-size': signed value");
--enable_query_log
##############################################################################
# Autoscaling is done as per below formula: #
# innodb_buffer_pool_size #
# server_memory < 1G ? 128M (same as current default) #
# server_memory <= 4G ? server_memory * 0.5 #
# server_memory > 4G ? server_memory * 0.75 #
# #
# innodb_log_file_size #
# buf_pool_size < 1G ? 48M (same as current default) #
# buf_pool_size < 8G ? 512M #
# buf_pool_size <= 128G ? 1024M #
# buf_pool_size > 128G ? 2048M #
# #
# innodb_log_files_in_group #
# buf_pool_size < 1G ? 2 (same as current default) #
# buf_pool_size < 8G ? ROUND(buf_pool_size/GB) #
# buf_pool_size <= 128G ? ROUND(buf_pool_size/GB * 0.75) #
# buf_pool_size > 128G ? 64 #
# #
# Following Perl module calculates server memory and evaluates #
# innodb_buffer_pool_size and #
# innodb_log_file_size #
# innodb_log_files_in_group #
# based on above formula. #
# #
# NOTE : Please build the server with UNIV_DEBUG_DEDICATED!!!!!! #
##############################################################################
# Test 1: 1G
let $debug_sys_mem_size=1;
--source suite/special/t/innodb_dedicated_server_gcov.inc
# Test 2: 4G
let $debug_sys_mem_size=4;
--source suite/special/t/innodb_dedicated_server_gcov.inc
# Test 3: 16G
let $debug_sys_mem_size=16;
--source suite/special/t/innodb_dedicated_server_gcov.inc
# Test 4: 200G
let $debug_sys_mem_size=200;
--source suite/special/t/innodb_dedicated_server_gcov.inc