Commit 9d58e807 authored by Jon Olav Hauglid's avatar Jon Olav Hauglid

Bug#16807394: PREVENT NEW ERROR MESSAGES FROM BEING ADDED TO 5.5

In order to keep error message numbers stable between GA releases, we
can not now add a new error message to 5.1/5.5 as this message would get 
a number now used in 5.6.

This patch enforces this by adding a 5.1/5.5 specific check when processing
the error message file. If a new error message is added, building will
abort and report an error.
parent 3a50884e
/*
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
......@@ -31,6 +31,7 @@
#include <my_getopt.h>
#include <assert.h>
#include <my_dir.h>
#include <mysql_version.h>
#define MAX_ROWS 1000
#define HEADER_LENGTH 32 /* Length of header in errmsg.sys */
......@@ -175,6 +176,23 @@ int main(int argc, char *argv[])
fprintf(stderr, "Failed to parse input file %s\n", TXTFILE);
DBUG_RETURN(1);
}
#if MYSQL_VERSION_ID >= 50100 && MYSQL_VERSION_ID < 50500
/* Number of error messages in 5.1 - do not change this number! */
#define MYSQL_OLD_GA_ERROR_MESSAGE_COUNT 641
#elif MYSQL_VERSION_ID >= 50500 && MYSQL_VERSION_ID < 50600
/* Number of error messages in 5.5 - do not change this number! */
#define MYSQL_OLD_GA_ERROR_MESSAGE_COUNT 728
#endif
#if MYSQL_OLD_GA_ERROR_MESSAGE_COUNT
if (row_count != MYSQL_OLD_GA_ERROR_MESSAGE_COUNT)
{
fprintf(stderr, "Can only add new error messages to latest GA. ");
fprintf(stderr, "Use ER_UNKNOWN_ERROR instead.\n");
fprintf(stderr, "Expected %u messages, found %u.\n",
MYSQL_OLD_GA_ERROR_MESSAGE_COUNT, row_count);
DBUG_RETURN(1);
}
#endif
if (lang_head == NULL || error_head == NULL)
{
fprintf(stderr, "Failed to parse input file %s\n", TXTFILE);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment