File: mysql_upgrade_noengine.test

package info (click to toggle)
mariadb-10.5 1%3A10.5.23-0%2Bdeb11u1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 712,240 kB
  • sloc: ansic: 2,158,658; cpp: 1,843,101; asm: 297,745; perl: 59,967; sh: 53,869; pascal: 38,348; java: 33,919; yacc: 19,639; python: 11,119; xml: 10,126; sql: 10,027; ruby: 8,544; makefile: 6,343; cs: 2,866; lex: 1,205; javascript: 1,037; objc: 80; tcl: 73; awk: 46; php: 22; sed: 16
file content (85 lines) | stat: -rw-r--r-- 3,948 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#
# MDEV-11942 BLACKHOLE is no longer active in 10.1 by default, mysql_upgrade not handling the situation
#
source include/mysql_upgrade_preparation.inc;
source include/have_innodb.inc;
source include/not_embedded.inc;

if (!$HA_BLACKHOLE_SO) {
  skip Need blackhole plugin;
}
if (!$HA_ARCHIVE_SO) {
  skip Need Archive plugin;
}

source include/switch_to_mysql_user.inc;
drop view mysql.user_bak;

let $datadir= `select @@datadir`;

install soname 'ha_blackhole';
install soname 'ha_archive';

vertical_results;
create table t1 (a int) engine=blackhole;
create table t2 (a int) engine=archive;
select table_catalog, table_schema, table_name, table_type, engine, row_format, table_rows, data_length, table_comment from information_schema.tables where table_schema='test' and table_name='t1';
select table_catalog, table_schema, table_name, table_type, engine, row_format, table_rows, data_length, table_comment from information_schema.tables where table_schema='test' and table_name='t2';

flush tables;
uninstall plugin blackhole;
uninstall plugin archive;
select table_catalog, table_schema, table_name, table_type, engine, row_format, table_rows, data_length, table_comment from information_schema.tables where table_schema='test' and table_name='t1';
select table_catalog, table_schema, table_name, table_type, engine, row_format, table_rows, data_length, table_comment from information_schema.tables where table_schema='test' and table_name='t2';

--echo # upgrade from 10.1 - engines aren't enabled
--replace_regex /\d\d\.\d*\.\d*[^ .\n]*/MariaDB /
exec $MYSQL_UPGRADE 2>&1;
select table_catalog, table_schema, table_name, table_type, engine, row_format, table_rows, data_length, table_comment from information_schema.tables where table_schema='test' and table_name='t1';
select table_catalog, table_schema, table_name, table_type, engine, row_format, table_rows, data_length, table_comment from information_schema.tables where table_schema='test' and table_name='t2';

drop table mysql.global_priv;
rename table mysql.global_priv_bak to mysql.global_priv;
source include/switch_to_mysql_user.inc;
drop view mysql.user_bak;

# pretend it's an upgrade from 10.0
alter table mysql.user drop column default_role, drop column max_statement_time;

# but mysql_upgrade_info tells otherwise
remove_file $datadir/mysql_upgrade_info;
write_file $datadir/mysql_upgrade_info;
10.1.10-MariaDB
EOF

--echo # still upgrade from 10.1
--replace_regex /\d\d\.\d*\.\d*[^ .\n]*/MariaDB /
exec $MYSQL_UPGRADE 2>&1;
select table_catalog, table_schema, table_name, table_type, engine, row_format, table_rows, data_length, table_comment from information_schema.tables where table_schema='test' and table_name='t1';
select table_catalog, table_schema, table_name, table_type, engine, row_format, table_rows, data_length, table_comment from information_schema.tables where table_schema='test' and table_name='t2';

drop table mysql.global_priv;
rename table mysql.global_priv_bak to mysql.global_priv;
source include/switch_to_mysql_user.inc;
drop view mysql.user_bak;

alter table mysql.user drop column default_role, drop column max_statement_time;
remove_file $datadir/mysql_upgrade_info;

--echo # upgrade from 10.0 - engines are enabled
--replace_regex /\d\d\.\d*\.\d*[^ .\n]*/MariaDB /
exec $MYSQL_UPGRADE 2>&1;
select table_catalog, table_schema, table_name, table_type, engine, row_format, table_rows, data_length, table_comment from information_schema.tables where table_schema='test' and table_name='t1';
select table_catalog, table_schema, table_name, table_type, engine, row_format, table_rows, data_length, table_comment from information_schema.tables where table_schema='test' and table_name='t2';

drop table t1, t2;

remove_file $datadir/mysql_upgrade_info;
uninstall plugin blackhole;
uninstall plugin archive;

drop table mysql.global_priv;
rename table mysql.global_priv_bak to mysql.global_priv;

FLUSH PRIVILEGES;
SHOW GRANTS FOR root@localhost;