mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 13:02:28 +01:00
b00c536378
BitKeeper/etc/ignore: Added mysql-test/linux_sys_vars.inc mysql-test/load_sysvars.inc mysql-test/windows_sys_vars.inc to the ignore list
179 lines
7.2 KiB
Text
179 lines
7.2 KiB
Text
##################### mysql-test\t\big_tables_basic.test #######################
|
|
# #
|
|
# Variable Name: big_tables #
|
|
# Scope: SESSION #
|
|
# Access Type: Dynamic #
|
|
# Data Type: Boolean #
|
|
# Default Value: NA #
|
|
# Range: NA #
|
|
# #
|
|
# #
|
|
# Creation Date: 2008-02-07 #
|
|
# Author: Salman Rawala #
|
|
# #
|
|
# Description: Test Cases of Dynamic System Variable "big_tables" #
|
|
# that checks behavior of this variable in the following ways #
|
|
# * Default Value #
|
|
# * Valid & Invalid values #
|
|
# * Scope & Access method #
|
|
# * Data Integrity . #
|
|
# #
|
|
# Reference: http://dev.mysql.com/doc/refman/5.1/en/ #
|
|
# server-options.html#option_mysqld_big-tables #
|
|
# #
|
|
################################################################################
|
|
|
|
--source include/load_sysvars.inc
|
|
|
|
##########################################################
|
|
# START OF big_tables TESTS #
|
|
##########################################################
|
|
|
|
|
|
##################################################################
|
|
# Saving initial value of big_tables in a temporary variable #
|
|
##################################################################
|
|
|
|
SET @start_value = @@big_tables;
|
|
SELECT @start_value;
|
|
|
|
--echo '#--------------------FN_DYNVARS_005_01------------------------#'
|
|
#############################################################
|
|
# Display the DEFAULT value of big_tables #
|
|
#############################################################
|
|
|
|
SET @@big_tables = 1;
|
|
SET @@big_tables = DEFAULT;
|
|
SELECT @@big_tables;
|
|
--echo 'Bug# 34829: No default value for variable and setting default does not raise error';
|
|
|
|
|
|
--echo '#--------------------FN_DYNVARS_005_02------------------------#'
|
|
#############################################################
|
|
# Change the value of big_tables to a valid value #
|
|
#############################################################
|
|
|
|
SET @@big_tables = 0;
|
|
SELECT @@big_tables;
|
|
SET @@big_tables = 1;
|
|
SELECT @@big_tables;
|
|
|
|
|
|
--echo '#--------------------FN_DYNVARS_005_03-------------------------#'
|
|
###########################################################################
|
|
# Change the value of big_tables to invalid value #
|
|
###########################################################################
|
|
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@big_tables = 2;
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@big_tables = -1;
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@big_tables = TRUEF;
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@big_tables = TRUE_F;
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@big_tables = FALSE0;
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@big_tables = OON;
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@big_tables = ONN;
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@big_tables = OOFF;
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@big_tables = 0FF;
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@big_tables = ' ';
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@big_tables = " ";
|
|
--Error ER_WRONG_VALUE_FOR_VAR
|
|
SET @@big_tables = '';
|
|
|
|
|
|
|
|
--echo '#-------------------FN_DYNVARS_005_04----------------------------#'
|
|
###########################################################################
|
|
# Test if accessing global big_tables gives error #
|
|
###########################################################################
|
|
|
|
--Error ER_LOCAL_VARIABLE
|
|
SET @@global.big_tables = 0;
|
|
--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
|
SELECT @@global.big_tables;
|
|
|
|
|
|
--echo '#----------------------FN_DYNVARS_005_05------------------------#'
|
|
##############################################################################
|
|
# Check if the value in SESSION Tables matches values in variable #
|
|
##############################################################################
|
|
|
|
SELECT @@big_tables = VARIABLE_VALUE
|
|
FROM INFORMATION_SCHEMA.SESSION_VARIABLES
|
|
WHERE VARIABLE_NAME='big_tables';
|
|
--echo Bug # 34839: Values in variable and information_schema do not match for autocommit
|
|
|
|
|
|
--echo '#---------------------FN_DYNVARS_005_06----------------------#'
|
|
###################################################################
|
|
# Check if ON and OFF values can be used on variable #
|
|
###################################################################
|
|
|
|
SET @@big_tables = OFF;
|
|
SELECT @@big_tables;
|
|
SET @@big_tables = ON;
|
|
SELECT @@big_tables;
|
|
|
|
--echo '#---------------------FN_DYNVARS_005_07----------------------#'
|
|
###################################################################
|
|
# Check if TRUE and FALSE values can be used on variable #
|
|
###################################################################
|
|
|
|
SET @@big_tables = TRUE;
|
|
SELECT @@big_tables;
|
|
SET @@big_tables = FALSE;
|
|
SELECT @@big_tables;
|
|
|
|
|
|
--echo '#---------------------FN_DYNVARS_005_08----------------------#'
|
|
##############################################################################
|
|
# Check if accessing variable with SESSION,LOCAL and without SCOPE points #
|
|
# to same session variable #
|
|
##############################################################################
|
|
|
|
SET @@big_tables = 0;
|
|
SELECT @@big_tables = @@session.big_tables;
|
|
SET @@big_tables = 1;
|
|
SELECT @@big_tables = @@local.big_tables and @@local.big_tables = @@session.big_tables;
|
|
|
|
--echo '#---------------------FN_DYNVARS_005_09----------------------#'
|
|
##########################################################################
|
|
# Check if big_tables can be accessed with and without @@ sign #
|
|
##########################################################################
|
|
|
|
SET big_tables = 1;
|
|
SELECT @@big_tables;
|
|
--Error ER_PARSE_ERROR
|
|
SET local.big_tables = 1;
|
|
--Error ER_UNKNOWN_TABLE
|
|
SELECT local.big_tables;
|
|
--Error ER_PARSE_ERROR
|
|
SET session.big_tables = 1;
|
|
--Error ER_UNKNOWN_TABLE
|
|
SELECT session.big_tables;
|
|
--Error ER_BAD_FIELD_ERROR
|
|
select big_tables;
|
|
|
|
|
|
##############################
|
|
# Restore initial value #
|
|
##############################
|
|
|
|
SET @@big_tables = @start_value;
|
|
SELECT @@big_tables;
|
|
|
|
|
|
#######################################################
|
|
# END OF big_tables TESTS #
|
|
#######################################################
|
|
|
|
|