1
0
mirror of https://github.com/MariaDB/server.git synced 2025-05-05 16:59:35 +03:00
mariadb/mysql-test/suite/sys_vars/t/innodb_undo_tablespaces_basic.test
Jan Lindström 2e814d4702 Merge InnoDB 5.7 from mysql-5.7.9.
Contains also

MDEV-10547: Test multi_update_innodb fails with InnoDB 5.7

	The failure happened because 5.7 has changed the signature of
	the bool handler::primary_key_is_clustered() const
	virtual function ("const" was added). InnoDB was using the old
	signature which caused the function not to be used.

MDEV-10550: Parallel replication lock waits/deadlock handling does not work with InnoDB 5.7

	Fixed mutexing problem on lock_trx_handle_wait. Note that
	rpl_parallel and rpl_optimistic_parallel tests still
	fail.

MDEV-10156 : Group commit tests fail on 10.2 InnoDB (branch bb-10.2-jan)
  Reason: incorrect merge

MDEV-10550: Parallel replication can't sync with master in InnoDB 5.7 (branch bb-10.2-jan)
  Reason: incorrect merge
2016-09-02 13:22:28 +03:00

79 lines
3.4 KiB
Plaintext

################## mysql-test/t/innodb_undo_tablespaces_basic.test ############
# #
# Variable Name: innodb_undo_tablespaces #
# Scope: Global #
# Access Type: Static #
# Data Type: string #
# #
# #
# Creation Date: 2011-07-05 #
# Author : Sunny Bains #
# #
# #
# Description: Read-only config global variable innodb_undo_tablespaces #
# * Value check #
# * Scope check #
# #
###############################################################################
--source include/have_innodb.inc
SELECT @@GLOBAL.innodb_undo_tablespaces >= 0;
let $undo_tablespaces=`SELECT @@GLOBAL.innodb_undo_tablespaces`;
####################################################################
# Check if value can be set #
####################################################################
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
SET @@GLOBAL.innodb_undo_tablespaces=128;
--echo Expected error 'Read only variable'
SELECT COUNT(@@GLOBAL.innodb_undo_tablespaces);
--echo 1 Expected
################################################################################
# Check if the value in GLOBAL table matches value in variable #
################################################################################
--disable_warnings
--disable_query_log
eval SELECT VARIABLE_VALUE-$undo_tablespaces DIFFERENCE
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
WHERE VARIABLE_NAME='innodb_undo_tablespaces';
--enable_query_log
--enable_warnings
--echo 0 Expected
################################################################################
# Check if accessing variable with and without GLOBAL point to same variable #
################################################################################
SELECT @@innodb_undo_tablespaces = @@GLOBAL.innodb_undo_tablespaces;
--echo 1 Expected
################################################################################
# Check if innodb_undo_tablespaces can be accessed with and without @@ sign #
################################################################################
SELECT COUNT(@@innodb_undo_tablespaces);
--echo 1 Expected
--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
SELECT COUNT(@@local.innodb_undo_tablespaces);
--echo Expected error 'Variable is a GLOBAL variable'
--Error ER_INCORRECT_GLOBAL_LOCAL_VAR
SELECT COUNT(@@SESSION.innodb_undo_tablespaces);
--echo Expected error 'Variable is a GLOBAL variable'
SELECT COUNT(@@GLOBAL.innodb_undo_tablespaces);
--echo 1 Expected
--Error ER_BAD_FIELD_ERROR
SELECT innodb_undo_tablespaces = @@SESSION.innodb_undo_tablespaces;
--echo Expected error 'Readonly variable'