mirror of
https://github.com/MariaDB/server.git
synced 2025-07-02 14:22:51 +03:00
Bug#16565 mysqld --help --verbose does not order variablesBug#20413 sql_slave_skip_counter is not shown in show variables Bug#20415 Output of mysqld --help --verbose is incomplete Bug#25430 variable not found in SELECT @@global.ft_max_word_len; Bug#32902 plugin variables don't know their names Bug#34599 MySQLD Option and Variable Reference need to be consistent in formatting! Bug#34829 No default value for variable and setting default does not raise error Bug#34834 ? Is accepted as a valid sql mode Bug#34878 Few variables have default value according to documentation but error occurs Bug#34883 ft_boolean_syntax cant be assigned from user variable to global var. Bug#37187 `INFORMATION_SCHEMA`.`GLOBAL_VARIABLES`: inconsistent status Bug#40988 log_output_basic.test succeeded though syntactically false. Bug#41010 enum-style command-line options are not honoured (maria.maria-recover fails) Bug#42103 Setting key_buffer_size to a negative value may lead to very large allocations Bug#44691 Some plugins configured as MYSQL_PLUGIN_MANDATORY in can be disabled Bug#44797 plugins w/o command-line options have no disabling option in --help Bug#46314 string system variables don't support expressions Bug#46470 sys_vars.max_binlog_cache_size_basic_32 is broken Bug#46586 When using the plugin interface the type "set" for options caused a crash. Bug#47212 Crash in DBUG_PRINT in mysqltest.cc when trying to print octal number Bug#48758 mysqltest crashes on sys_vars.collation_server_basic in gcov builds Bug#49417 some complaints about mysqld --help --verbose output Bug#49540 DEFAULT value of binlog_format isn't the default value Bug#49640 ambiguous option '--skip-skip-myisam' (double skip prefix) Bug#49644 init_connect and \0 Bug#49645 init_slave and multi-byte characters Bug#49646 mysql --show-warnings crashes when server dies
194 lines
7.8 KiB
Plaintext
194 lines
7.8 KiB
Plaintext
############## mysql-test\t\auto_increment_offset_func.test ####################
|
|
# #
|
|
# Variable Name: auto_increment_offset #
|
|
# Scope: GLOBAL & SESSION #
|
|
# Access Type: Dynamic #
|
|
# Data Type: Numeric #
|
|
# Default Value: 1 #
|
|
# Range: 1 - 65536 #
|
|
# #
|
|
# #
|
|
# Creation Date: 2008-03-07 #
|
|
# Author: Salman Rawala #
|
|
# #
|
|
# Description: Test Cases of Dynamic System Variable "auto_increment_offset" #
|
|
# that checks functionality of this variable #
|
|
# #
|
|
# Reference: http://dev.mysql.com/doc/refman/5.1/en/ #
|
|
# server-system-variables.html#option_mysqld_auto-increment-offset #
|
|
# #
|
|
################################################################################
|
|
|
|
# save vars
|
|
SET @global_auto_increment_increment = @@global.auto_increment_increment;
|
|
SET @session_auto_increment_increment = @@session.auto_increment_increment;
|
|
SET @global_auto_increment_offset = @@global.auto_increment_offset;
|
|
SET @session_auto_increment_offset = @@session.auto_increment_offset;
|
|
|
|
--disable_warnings
|
|
drop table if exists t1;
|
|
--enable_warnings
|
|
|
|
#########################
|
|
# Creating new table #
|
|
#########################
|
|
|
|
--echo ## Creating New Table ##
|
|
CREATE TABLE t1
|
|
(
|
|
id INT NOT NULL auto_increment,
|
|
PRIMARY KEY (id),
|
|
name VARCHAR(30)
|
|
);
|
|
|
|
--echo '#--------------------FN_DYNVARS_002_01-------------------------#'
|
|
#######################################################
|
|
# Setting initial value of auto_increment_offset #
|
|
#######################################################
|
|
|
|
--echo ## Setting initial value of variable to 5 ##
|
|
SET @@auto_increment_increment = 10;
|
|
SET @@auto_increment_offset = 5;
|
|
|
|
|
|
--echo '#--------------------FN_DYNVARS_002_02-------------------------#'
|
|
###########################################################################
|
|
# Inserting first value in table to check auto_increment_offset initial
|
|
# behavior
|
|
###########################################################################
|
|
|
|
--echo ## Inserting records in table and verifying variable's behavior ##
|
|
INSERT into t1(name) values('Record_1');
|
|
SELECT * from t1;
|
|
INSERT into t1(name) values('Record_2');
|
|
SELECT * from t1;
|
|
|
|
--echo ## Test behavior of variable after updating value of variable ##
|
|
SET @@auto_increment_offset = 24;
|
|
SELECT @@auto_increment_offset;
|
|
INSERT into t1(name) values('Record_3');
|
|
SELECT * from t1;
|
|
INSERT into t1(name) values('Record_4');
|
|
SELECT * from t1;
|
|
|
|
|
|
--echo '#--------------------FN_DYNVARS_002_03-------------------------#'
|
|
##########################################################
|
|
# Test behavior of variable on new connection # 01 #
|
|
##########################################################
|
|
|
|
--echo ## Changing value of global scope before opening new connection ##
|
|
|
|
SET @@global.auto_increment_increment = 15;
|
|
SET @@global.auto_increment_offset = 36;
|
|
|
|
--echo ## New connection test_con1 ##
|
|
CONNECT (test_con1,localhost,root,,);
|
|
CONNECTION test_con1;
|
|
|
|
--echo ## Value of session & global vairable here should be 10 ##
|
|
SELECT @@global.auto_increment_offset = 36;
|
|
SELECT @@session.auto_increment_offset = 36;
|
|
|
|
--echo ## Verify global value effect of variable by inserting new rows in table ##
|
|
INSERT into t1(name) values('Record_5');
|
|
INSERT into t1(name) values('Record_6');
|
|
SELECT * from t1;
|
|
|
|
--echo ## Setting session value of variable and inserting data in table ##
|
|
SET @@session.auto_increment_offset = 54;
|
|
INSERT into t1(name) values('Record_7');
|
|
INSERT into t1(name) values('Record_8');
|
|
SELECT * from t1;
|
|
|
|
|
|
--echo '#--------------------FN_DYNVARS_002_04-------------------------#'
|
|
######################################################################
|
|
# Test behavior of variable on assigning value to variable that is
|
|
# less than last index id
|
|
######################################################################
|
|
|
|
--echo ## Setting value of variable less than last insert id ##
|
|
SET @@session.auto_increment_offset = 5;
|
|
INSERT into t1(name) values('Record_9');
|
|
INSERT into t1(name) values('Record_10');
|
|
INSERT into t1(name) values('Record_11');
|
|
INSERT into t1(name) values('Record_12');
|
|
SELECT * from t1;
|
|
|
|
|
|
|
|
--echo '#--------------------FN_DYNVARS_002_05-------------------------#'
|
|
#####################################################################
|
|
# Verify variable's behavior on assigning value greater than
|
|
# auto_increment_increment value
|
|
#####################################################################
|
|
|
|
--echo ## Assigning value to variable greater than auto_increment_incrent value ##
|
|
SET @@auto_increment_offset = 140;
|
|
SET @@auto_increment_increment = 10;
|
|
|
|
INSERT into t1(name) values('Record_13');
|
|
INSERT into t1(name) values('Record_14');
|
|
SELECT * from t1;
|
|
|
|
--echo '#--------------------FN_DYNVARS_002_06-------------------------#'
|
|
###############################################################################
|
|
# Altering table field to different datatypes and checking their behavior #
|
|
###############################################################################
|
|
|
|
--echo ## Changing datatype of column id with primary key to SmallInt ##
|
|
ALTER table t1 modify id SMALLINT NOT NULL auto_increment;
|
|
INSERT into t1(name) values('Record_15');
|
|
INSERT into t1(name) values('Record_16');
|
|
SELECT * from t1;
|
|
|
|
--echo ## Changing datatype of column id with primary key to BigInt ##
|
|
ALTER table t1 modify id BIGINT NOT NULL auto_increment;
|
|
INSERT into t1(name) values('Record_17');
|
|
INSERT into t1(name) values('Record_18');
|
|
SELECT * from t1;
|
|
|
|
--echo '#--------------------FN_DYNVARS_002_07-------------------------#'
|
|
###############################################################################
|
|
# Check behavior of variable after assigning invalid values to variable #
|
|
###############################################################################
|
|
|
|
--echo ## Assigning -ve value to variable ##
|
|
SET @@auto_increment_offset = -10;
|
|
SELECT @@auto_increment_offset = -10;
|
|
INSERT into t1(name) values('Record_17');
|
|
INSERT into t1(name) values('Record_18');
|
|
SELECT * from t1;
|
|
|
|
--echo ## Assigning value that is out of range of variable ##
|
|
SET @@auto_increment_offset = 65536;
|
|
SELECT @@auto_increment_offset;
|
|
INSERT into t1(name) values('Record_17');
|
|
INSERT into t1(name) values('Record_18');
|
|
INSERT into t1(name) values('Record_19');
|
|
INSERT into t1(name) values('Record_20');
|
|
SELECT * from t1;
|
|
|
|
--echo ## No effect of auto_increment_offset since value of this variable is greater ##
|
|
--echo ## than auto_increment_increment ##
|
|
|
|
############################################################
|
|
# Disconnecting all connection & dropping table #
|
|
############################################################
|
|
|
|
--echo ## Dropping table ##
|
|
DROP table if exists t1;
|
|
|
|
--echo ## Disconnecting connection ##
|
|
DISCONNECT test_con1;
|
|
|
|
--echo ## switching to default connection ##
|
|
connection default;
|
|
|
|
# restore vars
|
|
SET @@global.auto_increment_increment = @global_auto_increment_increment;
|
|
SET @@session.auto_increment_increment = @session_auto_increment_increment;
|
|
SET @@global.auto_increment_offset = @global_auto_increment_offset;
|
|
SET @@session.auto_increment_offset = @session_auto_increment_offset;
|