| Bug #11669 | mysql.proc.db and others w charset latin1, when utf8 used server crashes on DROP | ||
|---|---|---|---|
| Submitted: | 30 Jun 2005 14:07 | Modified: | 8 Jul 2005 13:42 |
| Reporter: | Andrey Hristov | Email Updates: | |
| Status: | Duplicate | Impact on me: | |
| Category: | MySQL Server | Severity: | S1 (Critical) |
| Version: | OS: | ||
| Assigned to: | Assigned Account | CPU Architecture: | Any |
[30 Jun 2005 14:07]
Andrey Hristov
[7 Jul 2005 19:14]
Andrey Hristov
OK, I have changed my proc table to be with UTF8 fields. Now, I am able to create a stored procedure which has non-latin1 name and can see it created but when I try to drop it the server crashes.
The proc table is :
CREATE TABLE proc (
db char(64) character set utf8 binary DEFAULT '' NOT NULL,
name char(64) character set utf8 binary DEFAULT '' NOT NULL,
type enum('FUNCTION','PROCEDURE') NOT NULL,
specific_name char(64) character set utf8 binary DEFAULT '' NOT NULL,
language enum('SQL') DEFAULT 'SQL' NOT NULL,
sql_data_access enum('CONTAINS_SQL',
'NO_SQL',
'READS_SQL_DATA',
'MODIFIES_SQL_DATA'
) DEFAULT 'CONTAINS_SQL' NOT NULL,
is_deterministic enum('YES','NO') DEFAULT 'NO' NOT NULL,
security_type enum('INVOKER','DEFINER') DEFAULT 'DEFINER' NOT NULL,
param_list blob DEFAULT '' NOT NULL,
returns char(64) DEFAULT '' NOT NULL,
body blob DEFAULT '' NOT NULL,
definer char(77) character set utf8 binary DEFAULT '' NOT NULL,
created timestamp,
modified timestamp,
sql_mode set(
'REAL_AS_FLOAT',
'PIPES_AS_CONCAT',
'ANSI_QUOTES',
'IGNORE_SPACE',
'NOT_USED',
'ONLY_FULL_GROUP_BY',
'NO_UNSIGNED_SUBTRACTION',
'NO_DIR_IN_CREATE',
'POSTGRESQL',
'ORACLE',
'MSSQL',
'DB2',
'MAXDB',
'NO_KEY_OPTIONS',
'NO_TABLE_OPTIONS',
'NO_FIELD_OPTIONS',
'MYSQL323',
'MYSQL40',
'ANSI',
'NO_AUTO_VALUE_ON_ZERO',
'NO_BACKSLASH_ESCAPES',
'STRICT_TRANS_TABLES',
'STRICT_ALL_TABLES',
'NO_ZERO_IN_DATE',
'NO_ZERO_DATE',
'INVALID_DATES',
'ERROR_FOR_DIVISION_BY_ZERO',
'TRADITIONAL',
'NO_AUTO_CREATE_USER',
'HIGH_NOT_PRECEDENCE'
) DEFAULT 0 NOT NULL,
comment char(64) character set utf8 binary DEFAULT '' NOT NULL,
PRIMARY KEY (db,name,type)
) comment='Stored Procedures';
The the session:
mysql> set names utf8;
Query OK, 0 rows affected (0.00 sec)
mysql> create procedure процедура1()no sql begin end;mes utf8;
Query OK, 0 rows affected (0.00 sec)
mysql> select * from proc\G
*************************** 1. row ***************************
db: mysql
name: процедура1
type: PROCEDURE
specific_name: процедура1
language: SQL
sql_data_access: NO_SQL
is_deterministic: NO
security_type: DEFINER
param_list:
returns:
body: begin end
definer: root@%
created: 2005-07-07 21:11:08
modified: 2005-07-07 21:11:08
sql_mode: ANSI_QUOTES,IGNORE_SPACE,NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER
comment:
1 row in set (0.00 sec)
mysql> drop procedure процедура1;
ERROR 2013 (HY000): Lost connection to MySQL server during query
mysql>
[7 Jul 2005 19:31]
Andrey Hristov
Crashes also on SHOW CREATE PROCEDURE
[8 Jul 2005 13:42]
Per-Erik Martin
Duplicate of BUG#11365
