diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-04 18:04:16 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-04 18:04:16 +0000 |
commit | a68fb2d8219f6bccc573009600e9f23e89226a5e (patch) | |
tree | d742d35d14ae816e99293d2b01face30e9f3a46b /mysql-test/main/bootstrap.test | |
parent | Initial commit. (diff) | |
download | mariadb-10.6-a68fb2d8219f6bccc573009600e9f23e89226a5e.tar.xz mariadb-10.6-a68fb2d8219f6bccc573009600e9f23e89226a5e.zip |
Adding upstream version 1:10.6.11.upstream/1%10.6.11upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'mysql-test/main/bootstrap.test')
-rw-r--r-- | mysql-test/main/bootstrap.test | 162 |
1 files changed, 162 insertions, 0 deletions
diff --git a/mysql-test/main/bootstrap.test b/mysql-test/main/bootstrap.test new file mode 100644 index 00000000..f7bddf23 --- /dev/null +++ b/mysql-test/main/bootstrap.test @@ -0,0 +1,162 @@ +--source include/not_embedded.inc +# +# test mysqld in bootstrap mode +# +--disable_warnings +drop table if exists t1; +--enable_warnings + +# Add the datadir to the bootstrap command +let $MYSQLD_DATADIR= `select @@datadir`; +let $MYSQLD_BOOTSTRAP_CMD= $MYSQLD_BOOTSTRAP_CMD --datadir=$MYSQLD_DATADIR --tmpdir=$MYSQL_TMP_DIR --default-storage-engine=MyISAM --loose-skip-innodb --plugin-maturity=unknown; +# +# Check that --bootstrap reads from stdin +# +--write_file $MYSQLTEST_VARDIR/tmp/bootstrap_test.sql +use test; +CREATE TABLE t1(a int); +EOF +--source include/kill_mysqld.inc +--exec $MYSQLD_BOOTSTRAP_CMD < $MYSQLTEST_VARDIR/tmp/bootstrap_test.sql >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1 +--source include/start_mysqld.inc +drop table t1; +remove_file $MYSQLTEST_VARDIR/tmp/bootstrap_test.sql; +# +# Check that --bootstrap of file with SQL error returns error +# +--write_file $MYSQLTEST_VARDIR/tmp/bootstrap_error.sql +use test; +CREATE TABLE t1; +EOF +--source include/kill_mysqld.inc +--error 1 +--exec $MYSQLD_BOOTSTRAP_CMD < $MYSQLTEST_VARDIR/tmp/bootstrap_error.sql >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1 +# Table t1 should not exists +--source include/start_mysqld.inc +--error 1051 +drop table t1; +remove_file $MYSQLTEST_VARDIR/tmp/bootstrap_error.sql; + +# +# Bootstrap with a large thd->net.max_packet +# +--disable_query_log +create table t1 select 2 as a, concat(repeat('MySQL', @@max_allowed_packet/10), ';') as b; +eval select * into outfile '$MYSQLTEST_VARDIR/tmp/long_query.sql' from t1; +--enable_query_log +--source include/kill_mysqld.inc +--error 1 +--exec $MYSQLD_BOOTSTRAP_CMD < $MYSQLTEST_VARDIR/tmp/long_query.sql >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1 +remove_file $MYSQLTEST_VARDIR/tmp/long_query.sql; +--source include/start_mysqld.inc +drop table t1; + +--echo End of 5.1 tests + +--echo # +--echo # Bug #11766306: 59393: HAVE_INNODB=YES WHEN MYSQLD +--echo # STARTED WITH --SKIP-INNODB +--echo # + +# need the --skip-innodb option present for the test to succeed +SELECT 'bug' as '' FROM INFORMATION_SCHEMA.ENGINES WHERE engine='innodb' + and SUPPORT='YES'; + +--source include/kill_mysqld.inc +# +# MDEV-13063 Server crashes in intern_plugin_lock or assertion `plugin_ptr->ref_count == 1' fails in plugin_init +# +--error 1 +--exec $MYSQLD_BOOTSTRAP_CMD --myisam_recover_options=NONE + +# +# MDEV-19349 mysql_install_db: segfault at tmp_file_prefix check +# +--write_file $MYSQLTEST_VARDIR/tmp/1 +use test; +EOF +--exec $MYSQLD_BOOTSTRAP_CMD < $MYSQLTEST_VARDIR/tmp/1 >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1 +--remove_file $MYSQLTEST_VARDIR/tmp/1 + +--source include/start_mysqld.inc +--echo End of 5.5 tests + +--source include/not_windows_embedded.inc +--source include/have_example_plugin.inc +# +# Check that --bootstrap can install and uninstall plugins +# +let $PLUGIN_DIR=`select @@plugin_dir`; +--source include/kill_mysqld.inc +--write_file $MYSQLTEST_VARDIR/tmp/install_plugin.sql +install soname 'ha_example'; +uninstall plugin unusable; +EOF +--exec $MYSQLD_BOOTSTRAP_CMD --plugin-dir=$PLUGIN_DIR < $MYSQLTEST_VARDIR/tmp/install_plugin.sql >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1 +--remove_file $MYSQLTEST_VARDIR/tmp/install_plugin.sql + +# +# Check that installed plugins are *not* automatically loaded in --bootstrap +# +--write_file $MYSQLTEST_VARDIR/tmp/bootstrap_plugins.sql +SET SQL_MODE=""; +use test; +create table t1(a int) engine=example charset=latin1; +EOF +--exec $MYSQLD_BOOTSTRAP_CMD --plugin-dir=$PLUGIN_DIR < $MYSQLTEST_VARDIR/tmp/bootstrap_plugins.sql >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1 +--remove_file $MYSQLTEST_VARDIR/tmp/bootstrap_plugins.sql +--source include/start_mysqld.inc +flush tables; +show create table t1; +drop table t1; +--replace_result .dll .so +select * from mysql.plugin; +truncate table mysql.plugin; + + +# +# MDEV-9969 mysql_install_db error processing ignore_db_dirs. +# +--write_file $MYSQLTEST_VARDIR/tmp/bootstrap_9969.sql +use test; +EOF +--source include/kill_mysqld.inc +--exec $MYSQLD_BOOTSTRAP_CMD --ignore-db-dirs='some_dir' --ignore-db-dirs='some_dir' < $MYSQLTEST_VARDIR/tmp/bootstrap_9969.sql >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1 +--remove_file $MYSQLTEST_VARDIR/tmp/bootstrap_9969.sql + +# +# MDEV-13397 MariaDB upgrade fail when using default_time_zone +# +--write_file $MYSQLTEST_VARDIR/tmp/bootstrap_9969.sql +use test; +EOF +--exec $MYSQLD_BOOTSTRAP_CMD --default-time-zone=Europe/Moscow < $MYSQLTEST_VARDIR/tmp/bootstrap_9969.sql >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1 +--remove_file $MYSQLTEST_VARDIR/tmp/bootstrap_9969.sql + +--echo # +--echo # MDEV-28782 mariadb-tzinfo-to-sql to work in bootstrap mode +--echo # + +--write_file $MYSQLTEST_VARDIR/tmp/tz.sql +use test; + +create table time_zone like mysql.time_zone; +create table time_zone_leap_second like mysql.time_zone_leap_second; +create table time_zone_name like mysql.time_zone_name; +create table time_zone_transition like mysql.time_zone_transition; +create table time_zone_transition_type like mysql.time_zone_transition_type; + +EOF +--exec $MYSQL_TZINFO_TO_SQL --skip-write-binlog std_data/zoneinfo/GMT GMT 2>/dev/null >> $MYSQLTEST_VARDIR/tmp/tz.sql +--append_file $MYSQLTEST_VARDIR/tmp/tz.sql +DROP TABLE time_zone, time_zone_leap_second, time_zone_name, time_zone_transition, time_zone_transition_type; +EOF +--exec $MYSQLD_BOOTSTRAP_CMD < $MYSQLTEST_VARDIR/tmp/tz.sql >> $MYSQLTEST_VARDIR/tmp/bootstrap.log 2>&1 +--remove_file $MYSQLTEST_VARDIR/tmp/tz.sql + +--echo # +--echo # End of 10.6 tests +--echo # + +# restore +--source include/start_mysqld.inc |