MySQL Lists are EOL. Please join:

List:Commits« Previous MessageNext Message »
From:Magnus Blåudd Date:March 15 2010 1:57pm
Subject:bzr commit into mysql-trunk-bugfixing branch (magnus.blaudd:2994)
Bug#42589
View as plain text  
#At file:///home/msvensson/mysql/trunk-bugfixing/ based on revid:alik@strippede6iiqijc60bkx

 2994 Magnus Blåudd	2010-03-15 [merge]
      Merge in fix for bug#42589

    removed:
      mysql-test/t/system_mysql_db_fix30020.test
      scripts/mysql_fix_privilege_tables.sh
    modified:
      mysql-test/include/default_my.cnf
      mysql-test/mysql-test-run.pl
      scripts/Makefile.am
      scripts/mysql_system_tables_fix.sql
      sql/udf_example.c
      support-files/mysql.spec.sh
=== modified file 'mysql-test/include/default_my.cnf'
--- a/mysql-test/include/default_my.cnf	2010-01-12 01:47:27 +0000
+++ b/mysql-test/include/default_my.cnf	2010-03-15 13:57:20 +0000
@@ -30,14 +30,6 @@ loose-enable-performance-schema
 [mysqlbinlog]
 disable-force-if-open
 
-# mysql_fix_privilege_tables.sh does not read from [client] so it
-# need its own section
-[mysql_fix_privilege_tables]
-socket=                  @client.socket
-port=                    @client.port
-user=                    @client.user
-password=                @client.password
-
 [ENV]
 MASTER_MYPORT=           @mysqld.1.port
 MASTER_MYSOCK=           @mysqld.1.socket

=== modified file 'mysql-test/mysql-test-run.pl'
--- a/mysql-test/mysql-test-run.pl	2010-02-24 13:52:27 +0000
+++ b/mysql-test/mysql-test-run.pl	2010-03-15 13:57:20 +0000
@@ -1723,26 +1723,8 @@ sub client_debug_arg($$) {
 }
 
 
-sub mysql_fix_arguments () {
-
-  return "" ;
-
-  my $exe=
-    mtr_script_exists("$basedir/scripts/mysql_fix_privilege_tables",
-		      "$path_client_bindir/mysql_fix_privilege_tables");
-  my $args;
-  mtr_init_args(\$args);
-  mtr_add_arg($args, "--defaults-file=%s", $path_config_file);
-
-  mtr_add_arg($args, "--basedir=%s", $basedir);
-  mtr_add_arg($args, "--bindir=%s", $path_client_bindir);
-  mtr_add_arg($args, "--verbose");
-  return mtr_args2str($exe, @$args);
-}
-
-
 sub client_arguments ($;$) {
-  my $client_name= shift;
+ my $client_name= shift;
   my $group_suffix= shift;
   my $client_exe= mtr_exe_exists("$path_client_bindir/$client_name");
 
@@ -2083,7 +2065,6 @@ sub environment_setup {
   $ENV{'MYSQL_UPGRADE'}=            client_arguments("mysql_upgrade");
   $ENV{'MYSQLADMIN'}=               native_path($exe_mysqladmin);
   $ENV{'MYSQL_CLIENT_TEST'}=        mysql_client_test_arguments();
-  $ENV{'MYSQL_FIX_SYSTEM_TABLES'}=  mysql_fix_arguments();
   $ENV{'EXE_MYSQL'}=                $exe_mysql;
 
   # ----------------------------------------------------
@@ -2647,14 +2628,6 @@ sub create_config_file_for_extern {
 character-sets-dir= $path_charsetsdir
 local-load= $opt_tmpdir
 
-# mysql_fix_privilege_tables.sh don't read from [client]
-[mysql_fix_privilege_tables]
-socket            = $opts{'socket'}
-port              = $opts{'port'}
-user              = $opts{'user'}
-password          = $opts{'password'}
-
-
 EOF
 ;
 

=== removed file 'mysql-test/t/system_mysql_db_fix30020.test'
--- a/mysql-test/t/system_mysql_db_fix30020.test	2009-02-02 11:36:03 +0000
+++ b/mysql-test/t/system_mysql_db_fix30020.test	1970-01-01 00:00:00 +0000
@@ -1,108 +0,0 @@
-# Embedded server doesn't support external clients
---source include/not_embedded.inc
-
-# Don't run this test if $MYSQL_FIX_SYSTEM_TABLES isn't set
-# to the location of mysql_fix_privilege_tables.sql
-if (`SELECT LENGTH("$MYSQL_FIX_SYSTEM_TABLES") <= 0`)
-{
-  skip Test need MYSQL_FIX_SYSTEM_TABLES;
-}
-# check that CSV engine was compiled in, as the test relies on the presence
-# of the log tables (which are CSV-based)
---source include/have_csv.inc
-
-#
-# This is the test for mysql_fix_privilege_tables
-# It checks that a system tables from mysql 3.20
-# can be upgraded to current system table format
-#
-# Note: If this test fails, don't be confused about the errors reported
-# by mysql-test-run This shows warnings generated by
-# mysql_fix_system_tables which should be ignored.
-# Instead, concentrate on the errors in r/system_mysql_db.reject
-
--- disable_result_log
--- disable_query_log
-
-use test;
-
-# create system tables as in mysql-3.20
-
---disable_warnings
-CREATE TABLE db (
-  Host char(60) binary DEFAULT '' NOT NULL,
-  Db char(32) binary DEFAULT '' NOT NULL,
-  User char(16) binary DEFAULT '' NOT NULL,
-  Select_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Insert_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Update_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Delete_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Create_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Drop_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  PRIMARY KEY Host (Host,Db,User),
-  KEY User (User)
-)
-engine=MyISAM;
---enable_warnings
-
-INSERT INTO db VALUES ('%','test',   '','Y','Y','Y','Y','Y','Y');
-INSERT INTO db VALUES ('%','test\_%','','Y','Y','Y','Y','Y','Y');
-
---disable_warnings
-CREATE TABLE host (
-  Host char(60) binary DEFAULT '' NOT NULL,
-  Db char(32) binary DEFAULT '' NOT NULL,
-  Select_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Insert_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Update_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Delete_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Create_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Drop_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  PRIMARY KEY Host (Host,Db)
-)
-engine=MyISAM;
---enable_warnings
-
---disable_warnings
-CREATE TABLE user (
-  Host char(60) binary DEFAULT '' NOT NULL,
-  User char(16) binary DEFAULT '' NOT NULL,
-  Password char(16),
-  Select_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Insert_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Update_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Delete_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Create_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Drop_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Reload_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Shutdown_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  Process_priv enum('N','Y') DEFAULT 'N' NOT NULL,
-  PRIMARY KEY Host (Host,User)
-)
-engine=MyISAM;
---enable_warnings
-
-INSERT INTO user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y');
-INSERT INTO user VALUES ('localhost','',    '','N','N','N','N','N','N','N','N','N');
-
-# Call the "shell script" $MYSQL_FIX_SYSTEM_TABLES using system
--- system $MYSQL_FIX_SYSTEM_TABLES --database=test > $MYSQLTEST_VARDIR/log/system_mysql_db_fix30020.log 2>&1
--- enable_query_log
--- enable_result_log
-
--- source include/system_db_struct.inc
-
--- disable_query_log
-
-DROP TABLE db, host, user, func, plugin, tables_priv, columns_priv,
-procs_priv, servers, help_category, help_keyword, help_relation, help_topic, proc,
-time_zone, time_zone_leap_second, time_zone_name, time_zone_transition,
-time_zone_transition_type, general_log, slow_log, event, ndb_binlog_index;
-
--- enable_query_log
-
-# check that we dropped all system tables
-show tables;
-
-exit;
-# End of 4.1 tests

=== modified file 'scripts/Makefile.am'
--- a/scripts/Makefile.am	2010-03-01 09:39:44 +0000
+++ b/scripts/Makefile.am	2010-03-15 13:57:20 +0000
@@ -23,7 +23,6 @@ EXTRA_PROGRAMS = 	comp_sql
 bin_SCRIPTS =		@server_scripts@ \
 			msql2mysql \
 			mysql_config \
-			mysql_fix_privilege_tables \
 			mysql_fix_extensions \
 			mysql_setpermission \
 			mysql_secure_installation \
@@ -45,7 +44,6 @@ EXTRA_SCRIPTS =		make_binary_distributio
 			msql2mysql.sh \
 			mysql_config.sh \
 			mysql_config.pl.in \
-			mysql_fix_privilege_tables.sh \
 			mysql_fix_extensions.sh \
 			mysql_install_db.sh \
 			mysql_install_db.pl.in \
@@ -82,7 +80,6 @@ CLEANFILES =		@server_scripts@ \
 			make_sharedlib_distribution \
 			msql2mysql \
 			mysql_config \
-			mysql_fix_privilege_tables \
 			mysql_fix_extensions \
 			mysql_setpermission \
 			mysql_secure_installation \

=== removed file 'scripts/mysql_fix_privilege_tables.sh'
--- a/scripts/mysql_fix_privilege_tables.sh	2009-10-23 08:31:14 +0000
+++ b/scripts/mysql_fix_privilege_tables.sh	1970-01-01 00:00:00 +0000
@@ -1,223 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2000-2006 MySQL AB
-# 
-# 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
-# the Free Software Foundation; version 2 of the License.
-# 
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-# This script is a wrapper to pipe the mysql_fix_privilege_tables.sql
-# through the mysql client program to the mysqld server
-
-# Default values (Can be changed in my.cnf)
-password=""
-host="localhost"
-user="root"
-sql_only=0
-basedir="@prefix@"
-verbose=0
-args=""
-# no elaborate fallback here; with no argument, it will happen in "mysql"
-port=""
-socket=""
-database="mysql"
-bindir=""
-pkgdatadir="@pkgdatadir@"
-print_defaults_bindir="."
-
-file=mysql_fix_privilege_tables.sql
-
-# The following test is to make this script compatible with the 4.0 where
-# the single argument could be a password
-if test "$#" = 1
-then
-  case "$1" in
-  --*) ;;
-  *) old_style_password="$1" ; shift ;;
-  esac
-fi
-
-# The following code is almost identical to the code in mysql_install_db.sh
-
-case "$1" in
-    --no-defaults|--defaults-file=*|--defaults-extra-file=*)
-      defaults="$1"; shift
-      ;;
-esac
-
-parse_arguments() {
-  # We only need to pass arguments through to the server if we don't
-  # handle them here.  So, we collect unrecognized options (passed on
-  # the command line) into the args variable.
-  pick_args=
-  if test "$1" = PICK-ARGS-FROM-ARGV
-  then
-    pick_args=1
-    shift
-  fi
-
-  for arg do
-    case "$arg" in
-      --basedir=*) basedir=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
-      --user=*) user=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
-      --password=*) password=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
-      --host=*) host=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
-      --sql|--sql-only) sql_only=1 ;;
-      --verbose) verbose=1 ;;
-      --port=*) port=`echo "$arg" | sed -e "s;--port=;;"` ;;
-      --socket=*) socket=`echo "$arg" | sed -e "s;--socket=;;"` ;;
-      --database=*) database=`echo "$arg" | sed -e "s;--database=;;"` ;;
-      --bindir=*) bindir=`echo "$arg" | sed -e "s;--bindir=;;"`
-                  print_defaults_bindir=$bindir
-		  ;;
-      *)
-        if test -n "$pick_args"
-        then
-          # This sed command makes sure that any special chars are quoted,
-          # so the arg gets passed exactly to the server.
-          args="$args "`echo "$arg" | sed -e 's,\([^=a-zA-Z0-9_.-]\),\\\\\1,g'`
-        fi
-        ;;
-    esac
-  done
-}
-
-# Get first arguments from the my.cfg file, groups [mysqld] and
-# [mysql_install_db], and then merge with the command line arguments
-
-print_defaults=my_print_defaults
-for dir in ./bin @bindir@ @bindir@ extra $print_defaults_bindir/../bin $print_defaults_bindir/../extra
-do
-  if test -x $dir/my_print_defaults
-  then
-    print_defaults="$dir/my_print_defaults"
-    break
-  fi
-done
-
-parse_arguments `$print_defaults $defaults mysql_install_db mysql_fix_privilege_tables`
-parse_arguments PICK-ARGS-FROM-ARGV "$@"
-
-if test -z "$password"
-then
-  password=$old_style_password
-fi
-
-# Find where 'mysql' command is located
-
-dirname=`dirname "$0"`
-
-if test -z "$bindir"
-then
-  for i in @bindir@ $basedir/bin "$dirname/../client"
-  do
-    if test -f $i/mysql
-    then
-      bindir=$i
-      break
-    fi
-  done
-fi
-
-if test -z "$bindir"
-then
-  echo "Could not find MySQL command-line client (mysql)."
-  echo "Please use --basedir to specify the directory where MySQL is installed."
-  exit 1
-fi
-
-cmd="$bindir/mysql --no-defaults --default-character-set=latin1 --force --user=$user --host=$host"
-if test ! -z "$port"; then
-  cmd="$cmd --port=$port"
-fi
-if test ! -z "$socket"; then
-  cmd="$cmd --socket=$socket"
-fi
-cmd="$cmd --database=$database"
-
-if test $sql_only = 1
-then
-  cmd="cat"
-fi
-
-# Find where first mysql_fix_privilege_tables.sql is located
-for i in $basedir/support-files $basedir/share $basedir/share/mysql \
-        $basedir/scripts $pkgdatadir . "$dirname"
-do
-  if test -f $i/$file
-  then
-    pkgdatadir=$i
-    break
-  fi
-done
-
-sql_file="$pkgdatadir/$file"
-if test ! -f $sql_file
-then
-  echo "Could not find file '$file'."
-  echo "Please use --basedir to specify the directory where MySQL is installed"
-  exit 1
-fi
-
-s_echo()
-{
-   if test $sql_only = 0
-   then
-     echo $1
-   fi
-}
-
-s_echo "This script updates all the mysql privilege tables to be usable by"
-s_echo "the current version of MySQL"
-s_echo ""
-
-if test $verbose = 1
-then
-  s_echo "You can safely ignore all 'Duplicate column' and 'Unknown column' errors"
-  s_echo "because these just mean that your tables are already up to date."
-  s_echo "This script is safe to run even if your tables are already up to date!"
-  s_echo ""
-fi
-
-run_cmd() {
-  # Password argument is added here to allow for spaces in password.
-  
-  if test ! -z "$password"
-  then
-    cat $sql_file | $cmd --password="$password"
-  else
-    cat $sql_file | $cmd
-  fi
-}
-
-if test $verbose = 0
-then
-  run_cmd > /dev/null 2>&1
-else
-  run_cmd > /dev/null
-fi
-if test $? = 0
-then
-  s_echo "done"
-else
-  s_echo "Got a failure from command:"
-  s_echo "cat $sql_file | $cmd"
-  s_echo "Please check the above output and try again."
-  if test $verbose = 0
-  then
-    s_echo ""
-    s_echo "Running the script with the --verbose option may give you some information"
-    s_echo "of what went wrong."
-  fi
-  s_echo ""
-  s_echo "If you get an 'Access denied' error, you should run this script again and"
-  s_echo "give the MySQL root user password as an argument with the --password= option"
-fi

=== modified file 'scripts/mysql_system_tables_fix.sql'
--- a/scripts/mysql_system_tables_fix.sql	2009-12-16 18:02:21 +0000
+++ b/scripts/mysql_system_tables_fix.sql	2010-03-15 13:57:20 +0000
@@ -5,10 +5,6 @@
 # because these just mean that your tables are already up to date.
 # This script is safe to run even if your tables are already up to date!
 
-# On unix, you should use the mysql_fix_privilege_tables script to execute
-# this sql script.
-# On windows you should do 'mysql --force mysql < mysql_fix_privilege_tables.sql'
-
 set sql_mode='';
 set storage_engine=MyISAM;
 

=== modified file 'sql/udf_example.c'
--- a/sql/udf_example.c	2009-11-24 13:54:59 +0000
+++ b/sql/udf_example.c	2010-03-15 13:57:20 +0000
@@ -107,7 +107,7 @@
 ** option.
 **
 ** If you can't get AGGREGATES to work, check that you have the column
-** 'type' in the mysql.func table.  If not, run 'mysql_fix_privilege_tables'.
+** 'type' in the mysql.func table.  If not, run 'mysql_upgrade'.
 **
 */
 

=== modified file 'support-files/mysql.spec.sh'
--- a/support-files/mysql.spec.sh	2010-03-10 13:36:27 +0000
+++ b/support-files/mysql.spec.sh	2010-03-15 13:57:20 +0000
@@ -849,7 +849,6 @@ fi
 %attr(755, root, root) %{_bindir}/myisampack
 %attr(755, root, root) %{_bindir}/mysql_convert_table_format
 %attr(755, root, root) %{_bindir}/mysql_fix_extensions
-%attr(755, root, root) %{_bindir}/mysql_fix_privilege_tables
 %attr(755, root, root) %{_bindir}/mysql_install_db
 %attr(755, root, root) %{_bindir}/mysql_secure_installation
 %attr(755, root, root) %{_bindir}/mysql_setpermission
@@ -1105,6 +1104,10 @@ fi
 - Fix some problems with the directives around "tcmalloc" (experimental),
   remove erroneous traces of the InnoDB plugin (that is 5.1 only).
 
+* Fri Oct 06 2009 Magnus Blaudd <mvensson@mysql.com>
+
+- Removed mysql_fix_privilege_tables
+
 * Fri Oct 02 2009 Alexander Nozdrin <alexander.nozdrin@stripped>
 
 - "mysqlmanager" got removed from version 5.4, all references deleted.

Attachment: [text/bzr-bundle] bzr/magnus.blaudd@sun.com-20100315135720-gsihf0u59r1al30z.bundle
Thread
bzr commit into mysql-trunk-bugfixing branch (magnus.blaudd:2994)Bug#42589Magnus Blåudd15 Mar