1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-24 11:21:21 +03:00

Fix for BUG#2757

"--read-only gives weird error on update".
It is not fixable in 4.0 because it requires modifying
the sql/share/*/errmsg.txt files. So it is fixed in 4.1 like this:
the ER_SKIP_GRANT_TABLES is replaced by a more generic
ER_OPTION_PREVENTS_STATEMENT which can be used both for
"can't do this because of --skip-grant-tables" and
"can't do this because of --read-only" (for this we don't use
ER_CANT_UPDATE_WITH_READLOCK anymore).
So now the message for --read-only is:
"The MySQL server is running with the --read-only option so
cannot execute this statement".


include/mysqld_error.h:
  more general naming as more general message
sql/share/czech/errmsg.txt:
  message change
sql/share/danish/errmsg.txt:
  message change
sql/share/dutch/errmsg.txt:
  message change
sql/share/english/errmsg.txt:
  message change
sql/share/estonian/errmsg.txt:
  message change
sql/share/french/errmsg.txt:
  message change
sql/share/german/errmsg.txt:
  message change
sql/share/greek/errmsg.txt:
  message change
sql/share/hungarian/errmsg.txt:
  message change
sql/share/italian/errmsg.txt:
  message change
sql/share/japanese/errmsg.txt:
  message change
sql/share/korean/errmsg.txt:
  message change
sql/share/norwegian-ny/errmsg.txt:
  message change
sql/share/norwegian/errmsg.txt:
  message change
sql/share/polish/errmsg.txt:
  message change
sql/share/portuguese/errmsg.txt:
  message change
sql/share/romanian/errmsg.txt:
  message change
sql/share/russian/errmsg.txt:
  message change
sql/share/serbian/errmsg.txt:
  message change
sql/share/slovak/errmsg.txt:
  message change
sql/share/spanish/errmsg.txt:
  message change
sql/share/swedish/errmsg.txt:
  message change
sql/share/ukrainian/errmsg.txt:
  message change
sql/sql_acl.cc:
  Changes to use the more generic ER_OPTION_PREVENTS_STATEMENT
  instead of ER_SKIP_GRANT_TABLES:
  * use of net_printf() instead of send_error() (because send_error()
  does not support printf-like format).
  * in some places we now just do my_error() and return -1
  (only caller is mysql_execute_command() which does send_error()
  if result is -1).
  * Replaced my_printf_error() by simpler my_error() (except in 2 locations
  where there was a "we must use my_printf_error()" comment).
sql/sql_parse.cc:
  new error code (more generic).
This commit is contained in:
unknown
2004-02-21 15:15:26 +01:00
parent 4679b0e319
commit d68c56a493
26 changed files with 53 additions and 58 deletions

View File

@@ -1811,7 +1811,7 @@ mysql_execute_command(THD *thd)
!(thd->slave_thread || (thd->master_access & SUPER_ACL)) &&
(uc_update_queries[lex->sql_command] > 0))
{
send_error(thd, ER_CANT_UPDATE_WITH_READLOCK);
net_printf(thd, ER_OPTION_PREVENTS_STATEMENT, "--read-only");
DBUG_VOID_RETURN;
}