mariadb/mysql-test/suite/sys_vars/t/debug_dbug_utf16le.test
Alexander Barkov 9fb8881ef8 MDEV-28366 GLOBAL debug_dbug setting affected by collation_connection=utf16...
When the system variables @@debug_dbug was assigned to
some expression, Sys_debug_dbug::do_check() did not properly
convert the value from the expression character set to utf8.
So the value was erroneously re-interpretted as utf8 without
conversion. In case of a tricky expression character set
(e.g. utf16le), this led to unexpected results.

Fix:

Re-using Sys_var_charptr::do_string_check() in Sys_debug_dbug::do_check().
2024-04-10 06:09:45 +04:00

29 lines
587 B
Text

--source include/have_debug.inc
--source include/have_utf16.inc
--echo #
--echo # Start of 10.5 tests
--echo #
--echo #
--echo # MDEV-28366 GLOBAL debug_dbug setting affected by collation_connection=utf16...
--echo #
SET NAMES utf8;
SET collation_connection=utf16le_general_ci;
SET debug_dbug='d,any_random_string';
SELECT @@debug_dbug;
SET debug_dbug=CONCAT('d,', _latin1 0xDF);
SELECT @@debug_dbug;
SELECT HEX(@@debug_dbug);
SET @@debug_dbug=NULL;
SELECT @@debug_dbug;
SET @@debug_dbug=DEFAULT;
SELECT @@debug_dbug;
SET NAMES latin1;
--echo #
--echo # End of 10.5 tests
--echo #