From f2c82e48b2125c7366d76b32d2a7d3489339dd5f Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 30 Apr 2008 14:49:37 +0200 Subject: [PATCH] Fix for bug 35988. --- mysql-test/r/myisam_use_mmap_basic.result | 52 +++++++++++ mysql-test/t/myisam_use_mmap_basic.test | 104 ++++++++++++++++++++++ 2 files changed, 156 insertions(+) create mode 100644 mysql-test/r/myisam_use_mmap_basic.result create mode 100644 mysql-test/t/myisam_use_mmap_basic.test diff --git a/mysql-test/r/myisam_use_mmap_basic.result b/mysql-test/r/myisam_use_mmap_basic.result new file mode 100644 index 00000000000..c0f92acb983 --- /dev/null +++ b/mysql-test/r/myisam_use_mmap_basic.result @@ -0,0 +1,52 @@ +'#---------------------BS_STVARS_042_01----------------------#' +SELECT COUNT(@@GLOBAL.myisam_use_mmap); +COUNT(@@GLOBAL.myisam_use_mmap) +1 +1 Expected +'#---------------------BS_STVARS_042_02----------------------#' +"BUG:It should give error on setting this variable as it is readonly variable" +Expected error 'Read only variable' +SELECT COUNT(@@GLOBAL.myisam_use_mmap); +COUNT(@@GLOBAL.myisam_use_mmap) +1 +1 Expected +'#---------------------BS_STVARS_042_03----------------------#' +SELECT @@GLOBAL.myisam_use_mmap = VARIABLE_VALUE +FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES +WHERE VARIABLE_NAME='myisam_use_mmap'; +@@GLOBAL.myisam_use_mmap = VARIABLE_VALUE +1 +1 Expected +SELECT COUNT(@@GLOBAL.myisam_use_mmap); +COUNT(@@GLOBAL.myisam_use_mmap) +1 +1 Expected +SELECT COUNT(VARIABLE_VALUE) +FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES +WHERE VARIABLE_NAME='myisam_use_mmap'; +COUNT(VARIABLE_VALUE) +1 +1 Expected +'#---------------------BS_STVARS_042_04----------------------#' +SELECT @@myisam_use_mmap = @@GLOBAL.myisam_use_mmap; +@@myisam_use_mmap = @@GLOBAL.myisam_use_mmap +1 +1 Expected +'#---------------------BS_STVARS_042_05----------------------#' +SELECT COUNT(@@myisam_use_mmap); +COUNT(@@myisam_use_mmap) +1 +1 Expected +SELECT COUNT(@@local.myisam_use_mmap); +ERROR HY000: Variable 'myisam_use_mmap' is a GLOBAL variable +Expected error 'Variable is a GLOBAL variable' +SELECT COUNT(@@SESSION.myisam_use_mmap); +ERROR HY000: Variable 'myisam_use_mmap' is a GLOBAL variable +Expected error 'Variable is a GLOBAL variable' +SELECT COUNT(@@GLOBAL.myisam_use_mmap); +COUNT(@@GLOBAL.myisam_use_mmap) +1 +1 Expected +SELECT myisam_use_mmap = @@SESSION.myisam_use_mmap; +ERROR 42S22: Unknown column 'myisam_use_mmap' in 'field list' +Expected error 'Readonly variable' diff --git a/mysql-test/t/myisam_use_mmap_basic.test b/mysql-test/t/myisam_use_mmap_basic.test new file mode 100644 index 00000000000..d2cc39cfea7 --- /dev/null +++ b/mysql-test/t/myisam_use_mmap_basic.test @@ -0,0 +1,104 @@ + + +################## mysql-test\t\myisam_use_mmap_basic.test #################### +# # +# Variable Name: myisam_use_mmap # +# Scope: Global # +# Access Type: Static # +# Data Type: # +# # +# # +# Creation Date: 2008-02-07 # +# Author : Sharique Abdullah # +# # +# # +# Description:Test Cases of Dynamic System Variable myisam_use_mmap # +# that checks the behavior of this variable in the following ways # +# * Value Check # +# * Scope Check # +# # +# Reference: http://dev.mysql.com/doc/refman/5.1/en/ # +# server-system-variables.html # +# # +############################################################################### + +--echo '#---------------------BS_STVARS_042_01----------------------#' +#################################################################### +# Displaying default value # +#################################################################### +SELECT COUNT(@@GLOBAL.myisam_use_mmap); +--echo 1 Expected + + +--echo '#---------------------BS_STVARS_042_02----------------------#' +# +# Test case for Bug #35433 +# +#################################################################### +# Check if Value can set # +#################################################################### + +#--error ER_INCORRECT_GLOBAL_LOCAL_VAR +#SET @@GLOBAL.myisam_use_mmap=1; +--ECHO "BUG:It should give error on setting this variable as it is readonly variable" +--echo Expected error 'Read only variable' + +SELECT COUNT(@@GLOBAL.myisam_use_mmap); +--echo 1 Expected + + + + +--echo '#---------------------BS_STVARS_042_03----------------------#' +################################################################# +# Check if the value in GLOBAL Table matches value in variable # +################################################################# + +SELECT @@GLOBAL.myisam_use_mmap = VARIABLE_VALUE +FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES +WHERE VARIABLE_NAME='myisam_use_mmap'; +--echo 1 Expected + +SELECT COUNT(@@GLOBAL.myisam_use_mmap); +--echo 1 Expected + +SELECT COUNT(VARIABLE_VALUE) +FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES +WHERE VARIABLE_NAME='myisam_use_mmap'; +--echo 1 Expected + + + +--echo '#---------------------BS_STVARS_042_04----------------------#' +################################################################################ +# Check if accessing variable with and without GLOBAL point to same variable # +################################################################################ +SELECT @@myisam_use_mmap = @@GLOBAL.myisam_use_mmap; +--echo 1 Expected + + + +--echo '#---------------------BS_STVARS_042_05----------------------#' +################################################################################ +# Check if myisam_use_mmap can be accessed with and without @@ sign # +################################################################################ + +SELECT COUNT(@@myisam_use_mmap); +--echo 1 Expected + +--Error ER_INCORRECT_GLOBAL_LOCAL_VAR +SELECT COUNT(@@local.myisam_use_mmap); +--echo Expected error 'Variable is a GLOBAL variable' + +--Error ER_INCORRECT_GLOBAL_LOCAL_VAR +SELECT COUNT(@@SESSION.myisam_use_mmap); +--echo Expected error 'Variable is a GLOBAL variable' + +SELECT COUNT(@@GLOBAL.myisam_use_mmap); +--echo 1 Expected + +--Error ER_BAD_FIELD_ERROR +SELECT myisam_use_mmap = @@SESSION.myisam_use_mmap; +--echo Expected error 'Readonly variable' + +