Details
-
Bug
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
-
11.3(EOL)
-
None
Description
The current 11.3 fails on lowercase_table2.test.
The problem was not found by build-bot because it skips lowercase_table2.test on windows due to a missing *.opt file.
The test will be enabled on buildbot when MDEV-30765 get merged to 11.3
This is the diff produced:
--- /home/bar/maria-git/server.11.3.t/mysql-test/main/lowercase_table2.result 2023-08-21 09:41:13.112667012 +0400
|
+++ /home/bar/maria-git/server.11.3.t/mysql-test/main/lowercase_table2.reject 2023-08-28 13:33:13.959507582 +0400
|
@@ -14,7 +14,7 @@
|
Table Create Table |
T1 CREATE TABLE `T1` ( |
`a` int(11) DEFAULT NULL |
-) ENGINE=MyISAM DEFAULT CHARSET=latin1 |
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci |
RENAME TABLE T1 TO T2; |
SHOW TABLES LIKE "T2"; |
Tables_in_test (T2)
|
@@ -55,8 +55,8 @@
|
CREATE DATABASE `TEST_$1`; |
SHOW DATABASES LIKE "TEST%"; |
Database (TEST%) |
-TEST_$1
|
test
|
+test_$1
|
DROP DATABASE `test_$1`; |
CREATE TABLE T1 (a int) engine=innodb; |
INSERT INTO T1 VALUES (1); |
@@ -70,7 +70,7 @@
|
Table Create Table |
T1 CREATE TABLE `T1` ( |
`a` int(11) DEFAULT NULL |
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
+) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci |
RENAME TABLE T1 TO T2; |
SHOW TABLES LIKE "T2"; |
Tables_in_test (T2)
|
@@ -157,7 +157,7 @@
|
use mysqltest_LC2; |
create table myUC (i int); |
show tables;
|
-Tables_in_mysqltest_LC2
|
+Tables_in_mysqltest_lc2
|
myUC
|
insert into myUC values (1),(2),(3); |
select * from myUC; |
@@ -213,9 +213,6 @@
|
WHERE trigger_schema COLLATE utf8_bin = 'BUP_XPFM_COMPAT_DB2' |
ORDER BY trigger_schema, trigger_name; |
trigger_schema trigger_name event_object_table
|
-BUP_XPFM_COMPAT_DB2 trigger1 table1
|
-BUP_XPFM_COMPAT_DB2 TRIGGER2 TABLE2
|
-BUP_XPFM_COMPAT_DB2 TrigGer3 table3
|
DROP DATABASE BUP_XPFM_COMPAT_DB2; |
# End of 5.1 tests |
#
|
@@ -237,7 +234,7 @@
|
use mysqltest_UPPERCASE; |
select database(); |
database() |
-mysqltest_UPPERCASE
|
+mysqltest_uppercase
|
create table t_bug44738_UPPERCASE (i int) comment='Old comment'; |
create table t_bug44738_lowercase (i int) comment='Old comment'; |
create table t_bug44738_UPPERCASE2 (i int) comment='Old comment'; |
@@ -246,10 +243,10 @@
|
where table_schema like 'mysqltest_%' and table_name like 't_bug44738_%' |
order by table_name; |
table_schema table_name table_comment
|
-mysqltest_UPPERCASE t_bug44738_lowercase Old comment
|
-mysqltest_UPPERCASE t_bug44738_lowercase2 Old comment
|
-mysqltest_UPPERCASE t_bug44738_UPPERCASE Old comment
|
-mysqltest_UPPERCASE t_bug44738_UPPERCASE2 Old comment
|
+mysqltest_uppercase t_bug44738_lowercase Old comment
|
+mysqltest_uppercase t_bug44738_lowercase2 Old comment
|
+mysqltest_uppercase t_bug44738_UPPERCASE Old comment
|
+mysqltest_uppercase t_bug44738_UPPERCASE2 Old comment
|
alter table t_bug44738_UPPERCASE comment='New comment'; |
alter table t_bug44738_lowercase comment='New comment'; |
alter table mysqltest_uppercase.t_bug44738_UPPERCASE2 comment='New comment'; |
@@ -261,10 +258,10 @@
|
where table_schema like 'mysqltest_%' and table_name like 't_bug44738_%' |
order by table_name; |
table_schema table_name table_comment
|
-mysqltest_UPPERCASE t_bug44738_lowercase New comment
|
-mysqltest_UPPERCASE t_bug44738_lowercase2 New comment
|
-mysqltest_UPPERCASE t_bug44738_UPPERCASE New comment
|
-mysqltest_UPPERCASE t_bug44738_UPPERCASE2 New comment
|
+mysqltest_uppercase t_bug44738_lowercase New comment
|
+mysqltest_uppercase t_bug44738_lowercase2 New comment
|
+mysqltest_uppercase t_bug44738_UPPERCASE New comment
|
+mysqltest_uppercase t_bug44738_UPPERCASE2 New comment
|
drop database mysqltest_UPPERCASE; |
use test; |
# Let us check that the original test case which led to discovery |
@@ -310,27 +307,27 @@
|
show databases like 'mysql%'; |
Database (mysql%) |
mysql
|
-mysql_TEST
|
+mysql_test
|
show databases like 'mysql_T%'; |
Database (mysql_T%) |
-mysql_TEST
|
+mysql_test
|
show databases like 'mysql_t%'; |
Database (mysql_t%) |
-mysql_TEST
|
+mysql_test
|
show create database mysql_test; |
Database Create Database |
-mysql_test CREATE DATABASE `mysql_test` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+mysql_test CREATE DATABASE `mysql_test` /*!40100 DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci */ |
show create database mysql_TEST; |
Database Create Database |
-mysql_TEST CREATE DATABASE `mysql_TEST` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+mysql_TEST CREATE DATABASE `mysql_test` /*!40100 DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci */ |
show create table mysql_TEST.T1; |
Table Create Table |
T1 CREATE TABLE `T1` ( |
`a` int(11) DEFAULT NULL |
-) ENGINE=MyISAM DEFAULT CHARSET=latin1 |
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci |
show create table mysql_test.t1; |
Table Create Table |
t1 CREATE TABLE `t1` ( |
`a` int(11) DEFAULT NULL |
-) ENGINE=MyISAM DEFAULT CHARSET=latin1 |
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci |
drop database mysql_TEST; |
|
mysqltest: Result length mismatch
|
|
- saving '/home/bar/CIFSDIR/var/log/main.lowercase_table2-innodb/' to '/home/bar/CIFSDIR/var/log/main.lowercase_table2-innodb/' |
--------------------------------------------------------------------------
|
The servers were restarted 0 times
|
Spent 0.000 of 6 seconds executing testcases |
|
Failure: Failed 1/1 tests, 0.00% were successful.
|
|
Failing test(s): main.lowercase_table2
|
|
The log files in var/log may give you some hint of what went wrong. |
|
If you want to report this error, please read first the documentation |
at http://dev.mysql.com/doc/mysql/en/mysql-test-suite.html |
|
mysql-test-run: *** ERROR: there were failing test cases
|
- The extra COLLATE clause should be recored
- The wrong letter case in others line happen because of bugs made in a number of patches related to
MDEV-31531(see its "blocked by
Additionally, the output for this script changed:
CREATE DATABASE Db1; |
SHOW CREATE DATABASE Db1; |
USE Db1; |
SELECT DATABASE(); |
DROP DATABASE Db1; |
CREATE DATABASE Db1;
|
SHOW CREATE DATABASE Db1;
|
Database Create Database
|
Db1 CREATE DATABASE `db1` /*!40100 DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci */
|
USE Db1;
|
SELECT DATABASE();
|
DATABASE()
|
db1
|
DROP DATABASE Db1;
|
It used to produce this output:
CREATE DATABASE Db1;
|
SHOW CREATE DATABASE Db1;
|
Database Create Database
|
Db1 CREATE DATABASE `Db1` /*!40100 DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci */
|
SHOW CREATE DATABASE db1;
|
USE Db1;
|
SELECT DATABASE();
|
DATABASE()
|
Db1
|
DROP DATABASE Db1;
|
This script started to crashes:
CREATE DATABASE Db1; |
CREATE FUNCTION Db1.f1() RETURNS INT RETURN 10; |
CREATE FUNCTION db1.f2() RETURNS INT RETURN 10; |
SELECT db, name FROM mysql.proc WHERE name RLIKE '^f[12]'; |
SELECT Db1.f1(); |
SELECT db1.f1(); |
DROP DATABASE Db1; |
on DEBUG_ASSERT:
Version: '11.3.0-MariaDB-debug-log' socket: '/home/bar/tmpdir/mysqld.1.sock' port: 16000 Source distribution
|
mariadbd: /home/bar/maria-git/server.11.3.t/sql/item_create.cc:2771: virtual Item* Create_sp_func::create_with_db(THD*, const LEX_CSTRING*, const LEX_CSTRING*, bool, List<Item>*): Assertion `Lex_ident_fs(*db).ok_for_lower_case_names()' failed.
|
with this stack:
assert.c:0(.annobin_assert.c_end)[0x7fb3ea320a66]
|
sql/item_create.cc:2773(Create_sp_func::create_with_db(THD*, st_mysql_const_lex_string const*, st_mysql_const_lex_string const*, bool, List<Item>*))[0xd7c50f]
|
sql/sql_lex.cc:9588(LEX::make_item_func_call_generic(THD*, Lex_ident_cli_st*, Lex_ident_cli_st*, List<Item>*))[0x915e9f]
|
sql/sql_yacc.yy:10671(MYSQLparse(THD*))[0xc6839e]
|
Attachments
Issue Links
- blocks
-
MDEV-31531 Remove my_casedn_str() and my_caseup_str()
- Closed
-
MDEV-31606 Refactor check_db_name() to get a const argument
- Closed
- is caused by
-
MDEV-31948 Add class DBNameBuffer, split check_db_name() into stages
- Closed
-
MDEV-31978 Turn ok_for_lower_case_names() to a method in Lex_ident_fs
- Closed
-
MDEV-31982 Remove old check_db_name() from prepare_db_action()
- Closed
-
MDEV-31986 Remove old check_db_name() from make_table_name_list()
- Closed