Bug #13071 comp_err does not detect multiple messages per language
Submitted: 8 Sep 2005 18:02 Modified: 5 Oct 2005 23:47
Reporter: Paul Dubois Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Compiling Severity:S3 (Non-critical)
Version:5.0 and up OS:
Assigned to: Jim Winstead

[8 Sep 2005 18:02] Paul Dubois
Description:
In MySQL 5.0 and up, extra/comp_err uses the sql/share/errmsg.txt
file, which lists error code messages, each followed by a set of one
or more error messages, one message per language.  For example:

ER_WRONG_NAME_FOR_CATALOG 42000
    eng "Incorrect catalog name '%-.100s'"
    por "Incorreto nome de catálogo '%-.100s'"
    spa "Nombre de catalog incorrecto '%-.100s'"
    swe "Felaktigt katalog namn '%-.100s'"

However, if a section for an error message mistakenly
contains more than one message for a given langage
(say, two "eng" lines), comp_err does not detect this
condition.

I discovered this because my script that parses the errmsg.txt
file to generate messages for the reference manual discovered
a case of multiple messages for a language in the 5.1 errmsg.txt
file and exited with an error.  comp_err should be similarly strict.

How to repeat:
Have multiple "eng" lines for a given error symbol. comp_err
runs without complaint.
[17 Sep 2005 0:24] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/internals/30004
[5 Oct 2005 10:07] Guilhem Bichot
Hi Jim. Ok to push, but please add a comment in front of the body of find_message() to explain what no_default is about, for example the usual SYNOPSIS and RETURN VALUE comments.
[5 Oct 2005 17:06] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/internals/30722
[5 Oct 2005 19:01] Jim Winstead
Fixed in 5.0.15.
[5 Oct 2005 23:47] Paul Dubois
Noted in 5.0.15 changelog.