10 changed files with 203 additions and 1 deletions
-
29mysql-test/suite/maria/aria_log_dir_path.result
-
65mysql-test/suite/maria/aria_log_dir_path.test
-
1mysql-test/suite/maria/maria3.result
-
36mysql-test/suite/sys_vars/r/aria_log_dir_path_basic.result
-
12mysql-test/suite/sys_vars/r/sysvars_aria.result
-
10mysql-test/suite/sys_vars/r/sysvars_server_embedded.result
-
10mysql-test/suite/sys_vars/r/sysvars_server_notembedded.result
-
35mysql-test/suite/sys_vars/t/aria_log_dir_path_basic.test
-
4mysql-test/suite/sys_vars/t/sysvars_aria.test
-
2storage/maria/ha_maria.cc
@ -0,0 +1,29 @@ |
|||||
|
# |
||||
|
# MDEV-30971 Add a new system variable aria_data_home_dir |
||||
|
# |
||||
|
# restart: --loose-aria-log-file-size=8388608 --loose-aria-log-dir-path=MYSQLTEST_VARDIR/tmp/aria_log_dir_path_1 |
||||
|
SET @@global.aria_log_purge_type=external; |
||||
|
SHOW VARIABLES LIKE 'aria_log_file_size'; |
||||
|
Variable_name Value |
||||
|
aria_log_file_size 8388608 |
||||
|
SELECT @@aria_log_dir_path; |
||||
|
@@aria_log_dir_path |
||||
|
MYSQLTEST_VARDIR/tmp/aria_log_dir_path_1 |
||||
|
SET @@global.aria_checkpoint_interval=DEFAULT /*Force checkpoint*/; |
||||
|
SHOW ENGINE aria logs; |
||||
|
Type Name Status |
||||
|
Aria aria_log.00000001 in use |
||||
|
CREATE TABLE t1 (id INT, txt LONGTEXT) ENGINE=Aria; |
||||
|
BEGIN NOT ATOMIC |
||||
|
FOR id IN 0..9 DO |
||||
|
INSERT INTO test.t1 (id, txt) VALUES (id, REPEAT(id,1024*1024)); |
||||
|
END FOR; |
||||
|
END; |
||||
|
$$ |
||||
|
SET @@global.aria_checkpoint_interval=DEFAULT /*Force checkpoint*/; |
||||
|
SHOW ENGINE aria logs; |
||||
|
Type Name Status |
||||
|
Aria aria_log.00000001 free |
||||
|
Aria aria_log.00000002 in use |
||||
|
DROP TABLE t1; |
||||
|
# restart |
||||
@ -0,0 +1,65 @@ |
|||||
|
--source include/have_maria.inc |
||||
|
--let $datadir= `SELECT @@datadir` |
||||
|
|
||||
|
--echo # |
||||
|
--echo # MDEV-30971 Add a new system variable aria_data_home_dir |
||||
|
--echo # |
||||
|
|
||||
|
--let $ARIA_LOGDIR=$MYSQLTEST_VARDIR/tmp/aria_log_dir_path_1 |
||||
|
--mkdir $ARIA_LOGDIR |
||||
|
--let $restart_parameters=--loose-aria-log-file-size=8388608 --loose-aria-log-dir-path=$ARIA_LOGDIR |
||||
|
--source include/restart_mysqld.inc |
||||
|
|
||||
|
# |
||||
|
# Test that: |
||||
|
# - aria_log_dir_path is set to a non-default directory. |
||||
|
# - New Aria log files are created in the non-default directory. |
||||
|
# - The contents of the log directory (according to "file_exists" commands) |
||||
|
# is in sync with the "SHOW ENGINE aria logs" ouput. |
||||
|
# |
||||
|
|
||||
|
# Prevent automatic purge |
||||
|
SET @@global.aria_log_purge_type=external; |
||||
|
|
||||
|
SHOW VARIABLES LIKE 'aria_log_file_size'; |
||||
|
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR |
||||
|
SELECT @@aria_log_dir_path; |
||||
|
|
||||
|
|
||||
|
SET @@global.aria_checkpoint_interval=DEFAULT /*Force checkpoint*/; |
||||
|
--file_exists $ARIA_LOGDIR/aria_log_control |
||||
|
--file_exists $ARIA_LOGDIR/aria_log.00000001 |
||||
|
--error 1 |
||||
|
--file_exists $ARIA_LOGDIR/aria_log.00000002 |
||||
|
--replace_regex /Size +[0-9]+ ; .+aria_log/aria_log/ |
||||
|
SHOW ENGINE aria logs; |
||||
|
|
||||
|
|
||||
|
CREATE TABLE t1 (id INT, txt LONGTEXT) ENGINE=Aria; |
||||
|
DELIMITER $$; |
||||
|
BEGIN NOT ATOMIC |
||||
|
FOR id IN 0..9 DO |
||||
|
INSERT INTO test.t1 (id, txt) VALUES (id, REPEAT(id,1024*1024)); |
||||
|
END FOR; |
||||
|
END; |
||||
|
$$ |
||||
|
DELIMITER ;$$ |
||||
|
|
||||
|
|
||||
|
SET @@global.aria_checkpoint_interval=DEFAULT /*Force checkpoint*/; |
||||
|
--file_exists $ARIA_LOGDIR/aria_log_control |
||||
|
--file_exists $ARIA_LOGDIR/aria_log.00000001 |
||||
|
--file_exists $ARIA_LOGDIR/aria_log.00000002 |
||||
|
--error 1 |
||||
|
--file_exists $ARIA_LOGDIR/aria_log.00000003 |
||||
|
--replace_regex /Size +[0-9]+ ; .+aria_log/aria_log/ |
||||
|
SHOW ENGINE aria logs; |
||||
|
|
||||
|
DROP TABLE t1; |
||||
|
|
||||
|
--let $restart_parameters= |
||||
|
--source include/restart_mysqld.inc |
||||
|
--remove_file $ARIA_LOGDIR/aria_log_control |
||||
|
--remove_file $ARIA_LOGDIR/aria_log.00000001 |
||||
|
--remove_file $ARIA_LOGDIR/aria_log.00000002 |
||||
|
--rmdir $ARIA_LOGDIR |
||||
@ -0,0 +1,36 @@ |
|||||
|
SELECT COUNT(@@GLOBAL.aria_log_dir_path); |
||||
|
COUNT(@@GLOBAL.aria_log_dir_path) |
||||
|
1 |
||||
|
SET @@GLOBAL.aria_log_dir_path=1; |
||||
|
ERROR HY000: Variable 'aria_log_dir_path' is a read only variable |
||||
|
SELECT COUNT(@@GLOBAL.aria_log_dir_path); |
||||
|
COUNT(@@GLOBAL.aria_log_dir_path) |
||||
|
1 |
||||
|
SELECT @@GLOBAL.aria_log_dir_path = VARIABLE_VALUE |
||||
|
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES |
||||
|
WHERE VARIABLE_NAME='aria_log_dir_path'; |
||||
|
@@GLOBAL.aria_log_dir_path = VARIABLE_VALUE |
||||
|
1 |
||||
|
SELECT COUNT(@@GLOBAL.aria_log_dir_path); |
||||
|
COUNT(@@GLOBAL.aria_log_dir_path) |
||||
|
1 |
||||
|
SELECT COUNT(VARIABLE_VALUE) |
||||
|
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES |
||||
|
WHERE VARIABLE_NAME='aria_log_dir_path'; |
||||
|
COUNT(VARIABLE_VALUE) |
||||
|
1 |
||||
|
SELECT @@aria_log_dir_path = @@GLOBAL.aria_log_dir_path; |
||||
|
@@aria_log_dir_path = @@GLOBAL.aria_log_dir_path |
||||
|
1 |
||||
|
SELECT COUNT(@@aria_log_dir_path); |
||||
|
COUNT(@@aria_log_dir_path) |
||||
|
1 |
||||
|
SELECT COUNT(@@local.aria_log_dir_path); |
||||
|
ERROR HY000: Variable 'aria_log_dir_path' is a GLOBAL variable |
||||
|
SELECT COUNT(@@SESSION.aria_log_dir_path); |
||||
|
ERROR HY000: Variable 'aria_log_dir_path' is a GLOBAL variable |
||||
|
SELECT COUNT(@@GLOBAL.aria_log_dir_path); |
||||
|
COUNT(@@GLOBAL.aria_log_dir_path) |
||||
|
1 |
||||
|
SELECT aria_log_dir_path = @@SESSION.aria_log_dir_path; |
||||
|
ERROR 42S22: Unknown column 'aria_log_dir_path' in 'field list' |
||||
@ -0,0 +1,35 @@ |
|||||
|
--source include/have_maria.inc |
||||
|
|
||||
|
SELECT COUNT(@@GLOBAL.aria_log_dir_path); |
||||
|
--error ER_INCORRECT_GLOBAL_LOCAL_VAR |
||||
|
SET @@GLOBAL.aria_log_dir_path=1; |
||||
|
|
||||
|
SELECT COUNT(@@GLOBAL.aria_log_dir_path); |
||||
|
|
||||
|
|
||||
|
SELECT @@GLOBAL.aria_log_dir_path = VARIABLE_VALUE |
||||
|
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES |
||||
|
WHERE VARIABLE_NAME='aria_log_dir_path'; |
||||
|
|
||||
|
SELECT COUNT(@@GLOBAL.aria_log_dir_path); |
||||
|
|
||||
|
SELECT COUNT(VARIABLE_VALUE) |
||||
|
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES |
||||
|
WHERE VARIABLE_NAME='aria_log_dir_path'; |
||||
|
|
||||
|
|
||||
|
SELECT @@aria_log_dir_path = @@GLOBAL.aria_log_dir_path; |
||||
|
|
||||
|
|
||||
|
SELECT COUNT(@@aria_log_dir_path); |
||||
|
|
||||
|
--Error ER_INCORRECT_GLOBAL_LOCAL_VAR |
||||
|
SELECT COUNT(@@local.aria_log_dir_path); |
||||
|
|
||||
|
--Error ER_INCORRECT_GLOBAL_LOCAL_VAR |
||||
|
SELECT COUNT(@@SESSION.aria_log_dir_path); |
||||
|
|
||||
|
SELECT COUNT(@@GLOBAL.aria_log_dir_path); |
||||
|
|
||||
|
--Error ER_BAD_FIELD_ERROR |
||||
|
SELECT aria_log_dir_path = @@SESSION.aria_log_dir_path; |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue