Server IP : 172.67.216.182 / Your IP : 172.68.164.91 Web Server : Apache System : Linux krdc-ubuntu-s-2vcpu-4gb-amd-blr1-01.localdomain 5.15.0-142-generic #152-Ubuntu SMP Mon May 19 10:54:31 UTC 2025 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /www/server/mysql/src/mysql-test/suite/stress/include/ |
Upload File : |
######## include/ddl4.inc ###### # # Stress the storage engine with rapid CREATE/DROP TABLE/INDEX # and following SELECT/INSERT/SHOW etc. # Subtest 4 variants (4A - 4D) # # The variables # $loop_size -- number of rounds till we look at the clock again # $runtime -- rough intended runtime per subtest variant # $engine_type -- storage engine to be used in CREATE TABLE # must be set within the routine sourcing this script. # # Other stuff which must already exist: # - connection con2 # - stmt_start and stmt_break prepared by the default connection # # Please look for more details within include/ddl1.inc. # # Creation of this test: # 2007-07-04 mleich # #---------------------------------------------------------------------- # Settings for Subtest 4 variants # Scenario: CREATE TABLE variant1/SHOW/DROP TABLE/SHOW(F)/ # CREATE TABLE variant2/SHOW/DROP TABLE let $create_table1= CREATE TABLE t1 (f1 BIGINT, f2 BIGINT, UNIQUE(f1), UNIQUE (f2)) ENGINE=$engine_type; let $create_table2= CREATE TABLE t1 (f1 BIGINT) ENGINE=$engine_type; let $show_table= SHOW CREATE TABLE t1; let $drop_table= DROP TABLE t1; # eval $create_table1; let $cr_value1= INITIALIZED; let $cr_value1= query_get_value($show_table, Create Table, 1); eval $drop_table; eval $create_table2; let $cr_value2= INITIALIZED; let $cr_value2= query_get_value($show_table, Create Table, 1); eval $drop_table; if (`SELECT '$cr_value1' = '$cr_value2'`) { --echo # Error during generation of prerequisites. --echo # cr_value1 equals cr_value2 --echo # cr_value1: $cr_value1 --echo # cr_value2: $cr_value2 --echo # abort exit; } #---------------------------------------------------------------------- # --echo # Subtest 4A (one connection, no PREPARE/EXECUTE) --echo # connection action --echo # default: $create_table1 --echo # default: $show_table --echo # default: $drop_table --echo # default: $show_table (expect to get ER_NO_SUCH_TABLE) --echo # default: $create_table2 --echo # default: $show_table --echo # default: $drop_table --disable_query_log --disable_result_log connection default; let $run= 1; # Determine the current time. EXECUTE stmt_start; # Run execution loops till the planned runtime is reached while ($run) { let $loop_run= $loop_size; while ($loop_run) { eval $create_table1; let $value= INITIALIZED; let $value= query_get_value($show_table, Create Table, 1); if (`SELECT '$value' <> '$cr_value1'`) { --echo # Error: Unexpected SHOW CREATE TABLE output --echo # Got: $value --echo # Expected: $cr_value1 --echo # abort exit; } eval $drop_table; --error 0,ER_NO_SUCH_TABLE eval $show_table; if (!$mysql_errno) { --echo # Error: SHOW CREATE TABLE was successful though we expected ER_NO_SUCH_TABLE) --echo # abort exit; } eval $create_table2; let $value= INITIALIZED; let $value= query_get_value($show_table, Create Table, 1); if (`SELECT '$value' <> '$cr_value2'`) { --echo # Error: Unexpected SHOW CREATE TABLE output --echo # Got: $value --echo # Expected: $cr_value2 --echo # abort exit; } eval $drop_table; dec $loop_run; } if (`EXECUTE stmt_break`) { let $run= 0; } } --enable_result_log --enable_query_log # --echo # Subtest 4B (one connection, use PREPARE/EXECUTE) --echo # connection action --echo # default: $create_table1 --echo # default: $show_table --echo # default: $drop_table --echo # default: $show_table (expect to get ER_NO_SUCH_TABLE) --echo # default: $create_table2 --echo # default: $show_table --echo # default: $drop_table --disable_query_log --disable_result_log connection default; eval PREPARE create_table1 FROM "$create_table1"; eval PREPARE create_table2 FROM "$create_table2"; EXECUTE create_table1; eval PREPARE show_table FROM "$show_table"; eval PREPARE drop_table FROM "$drop_table"; EXECUTE drop_table; let $run= 1; # Determine the current time. EXECUTE stmt_start; # Run execution loops till the planned runtime is reached while ($run) { let $loop_run= $loop_size; while ($loop_run) { EXECUTE create_table1; let $value= INITIALIZED; let $value= query_get_value(EXECUTE show_table, Create Table, 1); if (`SELECT '$value' <> '$cr_value1'`) { --echo # Error: Unexpected SHOW CREATE TABLE output --echo # Got: $value --echo # Expected: $cr_value1 --echo # abort exit; } EXECUTE drop_table; --error 0,ER_NO_SUCH_TABLE EXECUTE show_table; if (!$mysql_errno) { --echo # Error: SHOW CREATE TABLE was successful though we expected ER_NO_SUCH_TABLE) --echo # abort exit; } EXECUTE create_table2; let $value= INITIALIZED; let $value= query_get_value(EXECUTE show_table, Create Table, 1); if (`SELECT '$value' <> '$cr_value2'`) { --echo # Error: Unexpected SHOW CREATE TABLE output --echo # Got: $value --echo # Expected: $cr_value2 --echo # abort exit; } EXECUTE drop_table; dec $loop_run; } if (`EXECUTE stmt_break`) { let $run= 0; } } DEALLOCATE PREPARE create_table1; DEALLOCATE PREPARE create_table2; DEALLOCATE PREPARE show_table; DEALLOCATE PREPARE drop_table; --enable_result_log --enable_query_log # --echo # Subtest 4C (two connections, no PREPARE/EXECUTE) --echo # connection action --echo # default: $create_table1 --echo # con2: $show_table --echo # default: $drop_table --echo # con2: $show_table (expect to get ER_NO_SUCH_TABLE) --echo # default: $create_table2 --echo # con2: $show_table --echo # default: $drop_table --disable_query_log --disable_result_log connection default; let $run= 1; # Determine the current time. EXECUTE stmt_start; # Run execution loops till the planned runtime is reached while ($run) { let $loop_run= $loop_size; while ($loop_run) { eval $create_table1; connection con2; let $value= INITIALIZED; let $value= query_get_value($show_table, Create Table, 1); if (`SELECT '$value' <> '$cr_value1'`) { --echo # Error: Unexpected SHOW CREATE TABLE output --echo # Got: $value --echo # Expected: $cr_value1 --echo # abort exit; } connection default; eval $drop_table; connection con2; --error 0,ER_NO_SUCH_TABLE eval $show_table; if (!$mysql_errno) { --echo # Error: SHOW CREATE TABLE was successful though we expected ER_NO_SUCH_TABLE) --echo # abort exit; } connection default; eval $create_table2; connection con2; let $value= INITIALIZED; let $value= query_get_value($show_table, Create Table, 1); if (`SELECT '$value' <> '$cr_value2'`) { --echo # Error: Unexpected SHOW CREATE TABLE output --echo # Got: $value --echo # Expected: $cr_value2 --echo # abort exit; } connection default; eval $drop_table; dec $loop_run; } if (`EXECUTE stmt_break`) { let $run= 0; } } --enable_result_log --enable_query_log # --echo # Subtest 4D (two connections, use PREPARE/EXECUTE) --echo # connection action --echo # default: $create_table1 --echo # con2: $show_table --echo # default: $drop_table --echo # con2: $show_table (expect to get ER_NO_SUCH_TABLE) --echo # default: $create_table2 --echo # con2: $show_table --echo # default: $drop_table --disable_query_log --disable_result_log connection default; eval PREPARE create_table1 FROM "$create_table1"; eval PREPARE create_table2 FROM "$create_table2"; eval PREPARE drop_table FROM "$drop_table"; EXECUTE create_table1; connection con2; eval PREPARE show_table FROM "$show_table"; connection default; EXECUTE drop_table; let $run= 1; # Determine the current time. EXECUTE stmt_start; # Run execution loops till the planned runtime is reached while ($run) { let $loop_run= $loop_size; while ($loop_run) { EXECUTE create_table1; connection con2; let $value= INITIALIZED; let $value= query_get_value(EXECUTE show_table, Create Table, 1); if (`SELECT '$value' <> '$cr_value1'`) { --echo # Error: Unexpected SHOW CREATE TABLE output --echo # Got: $value --echo # Expected: $cr_value1 --echo # abort exit; } connection default; EXECUTE drop_table; connection con2; --error 0,ER_NO_SUCH_TABLE EXECUTE show_table; if (!$mysql_errno) { --echo # Error: SHOW CREATE TABLE was successful though we expected ER_NO_SUCH_TABLE) --echo # abort exit; } connection default; EXECUTE create_table2; connection con2; let $value= INITIALIZED; let $value= query_get_value(EXECUTE show_table, Create Table, 1); if (`SELECT '$value' <> '$cr_value2'`) { --echo # Error: Unexpected SHOW CREATE TABLE output --echo # Got: $value --echo # Expected: $cr_value2 --echo # abort exit; } connection default; EXECUTE drop_table; dec $loop_run; } if (`EXECUTE stmt_break`) { let $run= 0; } } DEALLOCATE PREPARE create_table1; DEALLOCATE PREPARE create_table2; DEALLOCATE PREPARE drop_table; connection con2; DEALLOCATE PREPARE show_table; connection default; --enable_result_log --enable_query_log