Commit 34e01f80 authored by Sergei Golubchik's avatar Sergei Golubchik

restore innodb_encrypt_tables validation function

that was apparently lost in 20c23048:

  commit 20c23048
  Author: Jan Lindström <jan.lindstrom@mariadb.com>
  Date:   Sun May 17 14:14:16 2015 +0300

      MDEV-8164: Server crashes in pfs_mutex_enter_func after fil_crypt_is_closing

This also reverts 8635c4b4:

  commit 8635c4b4
  Author: Jan Lindström <jan.lindstrom@mariadb.com>
  Date:   Thu May 21 11:02:03 2015 +0300

      Fix test failure.
parent 5443b9db
...@@ -19,17 +19,23 @@ where variable_name='innodb_encrypt_tables'; ...@@ -19,17 +19,23 @@ where variable_name='innodb_encrypt_tables';
VARIABLE_NAME VARIABLE_VALUE VARIABLE_NAME VARIABLE_VALUE
INNODB_ENCRYPT_TABLES OFF INNODB_ENCRYPT_TABLES OFF
set global innodb_encrypt_tables=ON; set global innodb_encrypt_tables=ON;
ERROR 42000: Variable 'innodb_encrypt_tables' can't be set to the value of 'ON'
show warnings;
Level Code Message
Warning 138 InnoDB: cannot enable encryption, encryption plugin is not available
Error 1231 Variable 'innodb_encrypt_tables' can't be set to the value of 'ON'
select @@global.innodb_encrypt_tables; select @@global.innodb_encrypt_tables;
@@global.innodb_encrypt_tables @@global.innodb_encrypt_tables
ON OFF
set global innodb_encrypt_tables=OFF; set global innodb_encrypt_tables=OFF;
select @@global.innodb_encrypt_tables; select @@global.innodb_encrypt_tables;
@@global.innodb_encrypt_tables @@global.innodb_encrypt_tables
OFF OFF
set global innodb_encrypt_tables=1; set global innodb_encrypt_tables=1;
ERROR 42000: Variable 'innodb_encrypt_tables' can't be set to the value of '1'
select @@global.innodb_encrypt_tables; select @@global.innodb_encrypt_tables;
@@global.innodb_encrypt_tables @@global.innodb_encrypt_tables
ON OFF
set session innodb_encrypt_tables=1; set session innodb_encrypt_tables=1;
ERROR HY000: Variable 'innodb_encrypt_tables' is a GLOBAL variable and should be set with SET GLOBAL ERROR HY000: Variable 'innodb_encrypt_tables' is a GLOBAL variable and should be set with SET GLOBAL
set global innodb_encrypt_tables=1.1; set global innodb_encrypt_tables=1.1;
......
...@@ -19,10 +19,13 @@ where variable_name='innodb_encrypt_tables'; ...@@ -19,10 +19,13 @@ where variable_name='innodb_encrypt_tables';
# #
# show that it's writable # show that it's writable
# #
--error ER_WRONG_VALUE_FOR_VAR
set global innodb_encrypt_tables=ON; set global innodb_encrypt_tables=ON;
show warnings;
select @@global.innodb_encrypt_tables; select @@global.innodb_encrypt_tables;
set global innodb_encrypt_tables=OFF; set global innodb_encrypt_tables=OFF;
select @@global.innodb_encrypt_tables; select @@global.innodb_encrypt_tables;
--error ER_WRONG_VALUE_FOR_VAR
set global innodb_encrypt_tables=1; set global innodb_encrypt_tables=1;
select @@global.innodb_encrypt_tables; select @@global.innodb_encrypt_tables;
--error ER_GLOBAL_VARIABLE --error ER_GLOBAL_VARIABLE
......
...@@ -19201,7 +19201,7 @@ static MYSQL_SYSVAR_ENUM(encrypt_tables, srv_encrypt_tables, ...@@ -19201,7 +19201,7 @@ static MYSQL_SYSVAR_ENUM(encrypt_tables, srv_encrypt_tables,
PLUGIN_VAR_OPCMDARG, PLUGIN_VAR_OPCMDARG,
"Enable encryption for tables. " "Enable encryption for tables. "
"Don't forget to enable --innodb-encrypt-log too", "Don't forget to enable --innodb-encrypt-log too",
NULL, innodb_encrypt_tables_validate,
innodb_encrypt_tables_update, innodb_encrypt_tables_update,
0, 0,
&srv_encrypt_tables_typelib); &srv_encrypt_tables_typelib);
......
...@@ -20383,7 +20383,7 @@ static MYSQL_SYSVAR_ENUM(encrypt_tables, srv_encrypt_tables, ...@@ -20383,7 +20383,7 @@ static MYSQL_SYSVAR_ENUM(encrypt_tables, srv_encrypt_tables,
PLUGIN_VAR_OPCMDARG, PLUGIN_VAR_OPCMDARG,
"Enable encryption for tables. " "Enable encryption for tables. "
"Don't forget to enable --innodb-encrypt-log too", "Don't forget to enable --innodb-encrypt-log too",
NULL, innodb_encrypt_tables_validate,
innodb_encrypt_tables_update, innodb_encrypt_tables_update,
0, 0,
&srv_encrypt_tables_typelib); &srv_encrypt_tables_typelib);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment