diff options
Diffstat (limited to 'mysql-test/main/shm.test')
-rw-r--r-- | mysql-test/main/shm.test | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/mysql-test/main/shm.test b/mysql-test/main/shm.test new file mode 100644 index 00000000000..346ce49476e --- /dev/null +++ b/mysql-test/main/shm.test @@ -0,0 +1,47 @@ +# We currently only have shm support on windows, so in order +# to optimize things we skip this test on all other platforms +--source include/windows.inc + +# thread pool causes different results +-- source include/not_threadpool.inc + +# Only run this test if shared memory is avaliable +let $shm= query_get_value("SHOW VARIABLES LIKE 'shared_memory'", Value, 1); +if ($shm != ON){ + skip No shm support; +} +let $shm_name= query_get_value("SHOW GLOBAL VARIABLES LIKE 'shared_memory_base_name'", Value, 1); + +# Connect using SHM for testing +connect(shm_con,localhost,root,,,,$shm_name,SHM); + +# Source select test case +-- source include/common-tests.inc + +connection default; +disconnect shm_con; + +# +# Bug #24924: shared-memory-base-name that is too long causes buffer overflow +# +--exec $MYSQLADMIN --user=root --host=127.0.0.1 --port=$MASTER_MYPORT --shared-memory-base-name=HeyMrBaseNameXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ping + +# +# Bug #33899: Deadlock in mysql_real_query with shared memory connections +# + +let $stmt= `SELECT REPEAT('a', 2048)`; + +SET @max_allowed_packet= @@global.max_allowed_packet; +SET @net_buffer_length= @@global.net_buffer_length; + +SET GLOBAL max_allowed_packet= 1024; +SET GLOBAL net_buffer_length= 1024; + +--error 1 +--exec echo SELECT '$stmt'| $MYSQL --protocol=memory --shared-memory-base-name=$shm_name 2>&1 + +SET GLOBAL max_allowed_packet= @max_allowed_packet; +SET GLOBAL net_buffer_length= @net_buffer_length; + +--echo End of 5.0 tests. |