From ac24289e6600403155127b1a36788ad8b4ead500 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Mon, 17 Sep 2018 14:22:30 +0300 Subject: =?UTF-8?q?MDEV-16328=20ALTER=20TABLE=E2=80=A6page=5Fcompression?= =?UTF-8?q?=5Flevel=20should=20not=20rebuild=20table?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The table option page_compression_level is something that only affects future writes, not actually the data format. Therefore, we can allow instant changes of this option. Similarly, the table option page_compressed can be set on a previously uncompressed table without rebuilding the table, because an uncompressed page would be considered valid when reading a page_compressed table. Removing the page_compressed option will continue to require the table to be rebuilt. ha_innobase_inplace_ctx::page_compression_level: The requested page_compression_level at the start of ALTER TABLE, or 0 if page_compressed=OFF. alter_options_need_rebuild(): Renamed from create_option_need_rebuild(). Allow page_compression_level and page_compressed to be changed as above, without rebuilding the table. ha_innobase::check_if_supported_inplace_alter(): Allow ALGORITHM=INSTANT for ALTER_OPTIONS if the table is not to be rebuilt. If rebuild is needed, set ha_alter_info->unsupported_reason. innobase_page_compression_try(): Update SYS_TABLES.TYPE according to the table flags, for an instant change of page_compression_level or page_compressed. commit_cache_norebuild(): Adjust dict_table_t::flags, fil_space_t::flags and (if needed) FSP_SPACE_FLAGS if page_compression_level was specified. --- sql/share/errmsg-utf8.txt | 2 ++ 1 file changed, 2 insertions(+) (limited to 'sql/share/errmsg-utf8.txt') diff --git a/sql/share/errmsg-utf8.txt b/sql/share/errmsg-utf8.txt index 77347472521..a60ddeb3017 100644 --- a/sql/share/errmsg-utf8.txt +++ b/sql/share/errmsg-utf8.txt @@ -7919,3 +7919,5 @@ ER_VERS_QUERY_IN_PARTITION eng "SYSTEM_TIME partitions in table %`s does not support historical query" ER_KEY_DOESNT_SUPPORT eng "%s index %`s does not support this operation" +ER_ALTER_OPERATION_TABLE_OPTIONS_NEED_REBUILD + eng "Changing table options requires the table to be rebuilt" -- cgit v1.2.1 From 7c40996cc866ba9c6cf781776312301baa81c452 Mon Sep 17 00:00:00 2001 From: Sergei Golubchik Date: Wed, 17 Oct 2018 12:48:13 +0200 Subject: MDEV-12321 authentication plugin: SET PASSWORD support Support SET PASSWORD for authentication plugins. Authentication plugin API is extended with two optional methods: * hash_password() is used to compute a password hash (or digest) from the plain-text password. This digest will be stored in mysql.user table * preprocess_hash() is used to convert this digest into some memory representation that can be later used to authenticate a user. Build-in plugins convert the hash from hexadecimal or base64 to binary, to avoid doing it on every authentication attempt. Note a change in behavior: when loading privileges (on startup or on FLUSH PRIVILEGES) an account with an unknown plugin was loaded with a warning (e.g. "Plugin 'foo' is not loaded"). But such an account could not be used for authentication until the plugin is installed. Now an account like that will not be loaded at all (with a warning, still). Indeed, without plugin's preprocess_hash() method the server cannot know how to load an account. Thus, if a new authentication plugin is installed run-time, one might need FLUSH PRIVILEGES to activate all existing accounts that were using this new plugin. --- sql/share/errmsg-utf8.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sql/share/errmsg-utf8.txt') diff --git a/sql/share/errmsg-utf8.txt b/sql/share/errmsg-utf8.txt index a60ddeb3017..e73666cfb58 100644 --- a/sql/share/errmsg-utf8.txt +++ b/sql/share/errmsg-utf8.txt @@ -6570,7 +6570,7 @@ ER_ACCESS_DENIED_NO_PASSWORD_ERROR 28000 ukr "Доступ заборонено для користувача: '%s'@'%s'" ER_SET_PASSWORD_AUTH_PLUGIN - eng "SET PASSWORD has no significance for users authenticating via plugins" + eng "SET PASSWORD is ignored for users authenticating via %s plugin" ER_GRANT_PLUGIN_USER_EXISTS eng "GRANT with IDENTIFIED WITH is illegal because the user %-.*s already exists" -- cgit v1.2.1 From c53aab974bef7d98810409029d996e89677d2f68 Mon Sep 17 00:00:00 2001 From: Monty Date: Tue, 13 Nov 2018 01:34:37 +0200 Subject: Added syntax and implementation for BACKUP STAGE's Part of MDEV-5336 Implement LOCK FOR BACKUP - Changed check of Global_only_lock to also include BACKUP lock. - We store latest MDL_BACKUP_DDL lock in thd->mdl_backup_ticket to be able to downgrade lock during copy_data_between_tables() --- sql/share/errmsg-utf8.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'sql/share/errmsg-utf8.txt') diff --git a/sql/share/errmsg-utf8.txt b/sql/share/errmsg-utf8.txt index e73666cfb58..02b06c95453 100644 --- a/sql/share/errmsg-utf8.txt +++ b/sql/share/errmsg-utf8.txt @@ -7921,3 +7921,13 @@ ER_KEY_DOESNT_SUPPORT eng "%s index %`s does not support this operation" ER_ALTER_OPERATION_TABLE_OPTIONS_NEED_REBUILD eng "Changing table options requires the table to be rebuilt" +ER_BACKUP_LOCK_IS_ACTIVE + eng "Can't execute the command as you have a BACKUP STAGE active" +ER_BACKUP_NOT_RUNNING + eng "You must start backup with \"BACKUP STAGE START\"" +ER_BACKUP_WRONG_STAGE + eng "Backup stage '%s' is same or before current backup stage '%s'" +ER_BACKUP_STAGE_FAILED + eng "Backup stage '%s' failed" +ER_BACKUP_UNKNOWN_STAGE + eng "Unknown backup stage: '%s'. Stage should be one of START, FLUSH, BLOCK_DDL, BLOCK_COMMIT or END" -- cgit v1.2.1 From c4ab352b670618bb478138cfbf3ed195317b3ccb Mon Sep 17 00:00:00 2001 From: Alexey Botchkov Date: Sun, 16 Dec 2018 02:21:41 +0400 Subject: MDEV-14576 Include full name of object in message about incorrect value for column. The error message modified. Then the TABLE_SHARE::error_table_name() implementation taken from 10.3, to be used as a name of the table in this message. --- sql/share/errmsg-utf8.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'sql/share/errmsg-utf8.txt') diff --git a/sql/share/errmsg-utf8.txt b/sql/share/errmsg-utf8.txt index 0bb1974b6cd..8e54fa10ac5 100644 --- a/sql/share/errmsg-utf8.txt +++ b/sql/share/errmsg-utf8.txt @@ -5449,8 +5449,8 @@ ER_DIVISION_BY_ZERO 22012 ger "Division durch 0" hindi "0 से विभाजन" ER_TRUNCATED_WRONG_VALUE_FOR_FIELD 22007 - eng "Incorrect %-.32s value: '%-.128s' for column '%.192s' at row %lu" - ger "Falscher %-.32s-Wert: '%-.128s' für Feld '%.192s' in Zeile %lu" + eng "Incorrect %-.32s value: '%-.128s' for column `%.192s`.`%.192s`.`%.192s` at row %lu" + ger "Falscher %-.32s-Wert: '%-.128s' für Feld '`%.192s`.`%.192s`.`%.192s` in Zeile %lu" ER_ILLEGAL_VALUE_FOR_TYPE 22007 eng "Illegal %s '%-.192s' value found during parsing" ger "Nicht zulässiger %s-Wert '%-.192s' beim Parsen gefunden" -- cgit v1.2.1 From 83c81d8991fd72fb8af54172c612310e885720f5 Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub Date: Wed, 5 Dec 2018 13:13:07 +0100 Subject: MDEV-7598 Lock user after too many password errors --- sql/share/errmsg-utf8.txt | 2 ++ 1 file changed, 2 insertions(+) (limited to 'sql/share/errmsg-utf8.txt') diff --git a/sql/share/errmsg-utf8.txt b/sql/share/errmsg-utf8.txt index daf010d8e8a..e09afebe074 100644 --- a/sql/share/errmsg-utf8.txt +++ b/sql/share/errmsg-utf8.txt @@ -7931,3 +7931,5 @@ ER_BACKUP_STAGE_FAILED eng "Backup stage '%s' failed" ER_BACKUP_UNKNOWN_STAGE eng "Unknown backup stage: '%s'. Stage should be one of START, FLUSH, BLOCK_DDL, BLOCK_COMMIT or END" +ER_USER_IS_BLOCKED + eng "User is blocked because of too many credential errors; unblock with 'FLUSH PRIVILEGES'" -- cgit v1.2.1