Bug #46218 MySQL 5.4.4 won't start in 5.1 environment

Submitted: 16 Jul 2009 12:39 Modified: 7 Aug 2009 16:11
Reporter: Konstantin Osipov (OCA) Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Options Severity:S3 (Non-critical)
Version: OS:Any
Assigned to: Alexander Barkov CPU Architecture:Any
Tags: regression

[16 Jul 2009 12:39] Konstantin Osipov
Description:
MySQL 5.4.4 (azalea) won't start in 5.1 environment, that is, with 5.1 configuration file. 

This is an incompatible change, a regression introduced by the patch for WL#751.
This change contradicts the specification, and even if it was part of the specification, it should have followed the deprecation process, which it didn't.

I was able to observe two incompatibilities:

- "language" configuration option is no longer recognized
- the server looks for error messages file in a relative directory, different to the basedir than before. See "How to repeat" for details.

How to repeat:
Simply compile MySQL 5.4.4 (azalea) with ./BUILD/compile-* script, e.g. BUILD/compile-pentium-valgrind-max.

Use the following configuration file:

[mysql]
# The following options will be passed to all MySQL clients
[client]
port        = 3307
host        = 127.0.0.1

[mysqld]
socket=/opt/local/var/mysql/mysql.sock
port=3307
language=/home/kostja/work/5.4-azalea/sql/share/english
character-sets-dir=/home/kostja/work/5.4-azalea/sql/share/charsets
basedir=/home/kostja/work/5.4-azalea
datadir=/opt/local/var/mysql

This is a minimal configuration file for mysqld, and if you change 5.4-azalea in it to, say, 5.1-bugteam, it works perfectly well.

Observe the following at server start up:

090716 16:38:12 [ERROR] Can't find messagefile '/opt/local/work/5.4-azalea/share/mysql/english/errmsg.sys'
090716 16:38:13 [Note] Plugin 'FEDERATED' is disabled.
090716 16:38:13 [Note] Plugin 'InnoDB' is disabled.
090716 16:38:13 [Note] Plugin 'ndbcluster' is disabled.
090716 16:38:13 [ERROR] ./mysqld: unknown variable 'language=/home/kostja/work/5.4-azalea/sql/share/english'
090716 16:38:13 [ERROR] Aborting

090716 16:38:13 [Warning] Forcing shutdown of 3 plugins
090716 16:38:13 [Note] 

Observe that now the server looks up for errmsg.sys in basedir/share/mysql,
not in the directory specified by 'language'.
Observe that 'language' is no longer supported.

Suggested fix:
Restore 5.1 behaviour.
[16 Jul 2009 18:19] MySQL Verification Team
Thank you for the bug report.
[17 Jul 2009 9:57] Sergei Golubchik
see also bug#46236
[20 Jul 2009 10:40] Konstantin Osipov
Moving the D/W fields from the duplicate bug reported by Philip.
[20 Jul 2009 10:57] Alexander Barkov
A patch is available here:

http://lists.mysql.com/commits/78995
[21 Jul 2009 8:55] Alexander Barkov
Pushed into mysql-azalea-bugfixing
[21 Jul 2009 10:27] Philip Stoev
If you intend to obsolete the "language" option, please take a look at the MTR-specific considerations at

http://bugs.mysql.com/bug.php?id=46236
[23 Jul 2009 10:23] Bugs System
Pushed into 5.4.4-alpha (revid:alik@sun.com-20090723102221-ps4uaphwbxzj8p0q) (version source revid:bar@mysql.com-20090721083750-oput8niky7meuyjd) (merge vers: 5.4.4-alpha) (pib:11)
[6 Aug 2009 4:01] Alexander Barkov
See also Bug#46221
[7 Aug 2009 16:11] Paul DuBois
Bug does not appear in any released version, but the change in the way of specifying the location of the error message file is described here:

http://dev.mysql.com/doc/refman/5.4/en/error-message-language.html

Portions of this website are copyright © 2001, 2002 The PHP Group

Page generated in 0.062 sec. using MySQL 8.4.7-u6-cloud

Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.