--source include/not_embedded.inc

SET @start_global_value = @@global.slave_checkpoint_period;
SELECT @start_global_value;

#
# exists as global only
#
select @@global.slave_checkpoint_period;
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
select @@session.slave_checkpoint_period;
--replace_regex /[0-9]+/period/
show global variables like 'slave_checkpoint_period';
--replace_regex /[0-9]+/period/
show session variables like 'slave_checkpoint_period';
--replace_regex /[0-9]+/period/
select * from information_schema.global_variables where variable_name='slave_checkpoint_period';
--replace_regex /[0-9]+/period/
select * from information_schema.session_variables where variable_name='slave_checkpoint_period';

#
# show that it's writable
#
set global slave_checkpoint_period=1;
select @@global.slave_checkpoint_period;
--error ER_GLOBAL_VARIABLE
set session slave_checkpoint_period=1;

#
# incorrect types
#
--error ER_WRONG_TYPE_FOR_VAR
set global slave_checkpoint_period=1.1;
--error ER_WRONG_TYPE_FOR_VAR
set global slave_checkpoint_period=1e1;
--error ER_WRONG_TYPE_FOR_VAR
set global slave_checkpoint_period="foo";

#
# min/max values
#
set global slave_checkpoint_period=1;
select @@global.slave_checkpoint_period;
set global slave_checkpoint_period=cast(-1 as unsigned int);
select @@global.slave_checkpoint_period as "truncated to the maximum";

SET @@global.slave_checkpoint_period = @start_global_value;
SELECT @@global.slave_checkpoint_period;
