From: Alexander Nozdrin Date: October 6 2010 3:07pm Subject: bzr push into mysql-5.5-bugteam branch (alexander.nozdrin:3094 to 3095) Bug#57094 List-Archive: http://lists.mysql.com/commits/120144 X-Bug: 57094 Message-Id: <201010061508.o962VIIp024075@acsinet15.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============3758864700446107194==" --===============3758864700446107194== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline 3095 Alexander Nozdrin 2010-10-06 Fix for Bug#57094 (Copyright notice incorrect?). The fix is to: - introduce ORACLE_WELCOME_COPYRIGHT_NOTICE define to have a single place to specify copyright notice; - replace custom copyright notices with ORACLE_WELCOME_COPYRIGHT_NOTICE in programs. added: include/welcome_copyright_notice.h modified: client/mysql.cc client/mysql_upgrade.c client/mysqladmin.cc client/mysqlbinlog.cc client/mysqlcheck.c client/mysqldump.c client/mysqlimport.c client/mysqlshow.c client/mysqlslap.c client/mysqltest.cc sql/mysqld.cc 3094 Alexander Barkov 2010-10-06 Bug#55744 GROUP_CONCAT + CASE + ucs return garbage Problem: CASE didn't work with a mixture of different character sets in THEN/ELSE in some cases. This happened because after character set aggregation newly created Item_func_conv_charset items corresponding to THEN/ELSE arguments were not put back to args[] array. Fix: put all Item_func_conv_charset back to args[]. @ mysql-test/include/ctype_numconv.inc @ mysql-test/r/ctype_ucs.result Adding tests @ sql/item_cmpfunc.cc Put "agg" back to args[] after character set aggregation. modified: mysql-test/include/ctype_numconv.inc mysql-test/r/ctype_ucs.result sql/item_cmpfunc.cc === modified file 'client/mysql.cc' --- a/client/mysql.cc 2010-09-20 14:17:32 +0000 +++ b/client/mysql.cc 2010-10-06 15:06:13 +0000 @@ -13,11 +13,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -#define COPYRIGHT_NOTICE "\ -Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.\n\ -This software comes with ABSOLUTELY NO WARRANTY. This is free software,\n\ -and you are welcome to modify and redistribute it under the GPL v2 license\n" - /* mysql command tool * Commands compatible with mSQL by David J. Hughes * @@ -110,6 +105,7 @@ extern "C" { #endif #include "completion_hash.h" +#include // ORACLE_WELCOME_COPYRIGHT_NOTICE #define PROMPT_CHAR '\\' #define DEFAULT_DELIMITER ";" @@ -1177,7 +1173,7 @@ int main(int argc,char *argv[]) mysql_thread_id(&mysql), server_version_string(&mysql)); put_info((char*) glob_buffer.ptr(),INFO_INFO); - put_info(COPYRIGHT_NOTICE, INFO_INFO); + put_info(ORACLE_WELCOME_COPYRIGHT_NOTICE("2000, 2010"), INFO_INFO); #ifdef HAVE_READLINE initialize_readline((char*) my_progname); @@ -1595,7 +1591,7 @@ static void usage(int version) if (version) return; - printf("%s", COPYRIGHT_NOTICE); + puts(ORACLE_WELCOME_COPYRIGHT_NOTICE("2000, 2010")); printf("Usage: %s [OPTIONS] [database]\n", my_progname); my_print_help(my_long_options); print_defaults("my", load_default_groups); === modified file 'client/mysql_upgrade.c' --- a/client/mysql_upgrade.c 2010-08-11 17:56:56 +0000 +++ b/client/mysql_upgrade.c 2010-10-06 15:06:13 +0000 @@ -1,4 +1,4 @@ -/* Copyright (C) 2000 MySQL AB +/* Copyright (c) 2000, 2010, 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 @@ -17,6 +17,8 @@ #include #include "../scripts/mysql_fix_privilege_tables_sql.c" +#include /* ORACLE_WELCOME_COPYRIGHT_NOTICE */ + #define VER "1.1" #ifdef HAVE_SYS_WAIT_H @@ -232,6 +234,7 @@ get_one_option(int optid, const struct m case '?': printf("%s Ver %s Distrib %s, for %s (%s)\n", my_progname, VER, MYSQL_SERVER_VERSION, SYSTEM_TYPE, MACHINE_TYPE); + puts(ORACLE_WELCOME_COPYRIGHT_NOTICE("2000, 2010")); puts("MySQL utility for upgrading databases to new MySQL versions.\n"); my_print_help(my_long_options); exit(0); === modified file 'client/mysqladmin.cc' --- a/client/mysqladmin.cc 2010-07-15 11:13:30 +0000 +++ b/client/mysqladmin.cc 2010-10-06 15:06:13 +0000 @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2006 MySQL AB +/* Copyright (c) 2000, 2010, 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 @@ -23,6 +23,7 @@ #include #include #include +#include /* ORACLE_WELCOME_COPYRIGHT_NOTICE */ #define ADMIN_VERSION "8.42" #define MAX_MYSQL_VAR 512 @@ -671,8 +672,7 @@ static int execute_commands(MYSQL *mysql case ADMIN_VER: new_line=1; print_version(); - puts("Copyright 2000-2008 MySQL AB, 2008 Sun Microsystems, Inc."); - puts("This software comes with ABSOLUTELY NO WARRANTY. This is free software,\nand you are welcome to modify and redistribute it under the GPL license\n"); + puts(ORACLE_WELCOME_COPYRIGHT_NOTICE("2000, 2010")); printf("Server version\t\t%s\n", mysql_get_server_info(mysql)); printf("Protocol version\t%d\n", mysql_get_proto_info(mysql)); printf("Connection\t\t%s\n",mysql_get_host_info(mysql)); @@ -1070,8 +1070,7 @@ static void print_version(void) static void usage(void) { print_version(); - puts("Copyright 2000-2008 MySQL AB, 2008 Sun Microsystems, Inc."); - puts("This software comes with ABSOLUTELY NO WARRANTY. This is free software,\nand you are welcome to modify and redistribute it under the GPL license\n"); + puts(ORACLE_WELCOME_COPYRIGHT_NOTICE("2000, 2010")); puts("Administration program for the mysqld daemon."); printf("Usage: %s [OPTIONS] command command....\n", my_progname); my_print_help(my_long_options); === modified file 'client/mysqlbinlog.cc' --- a/client/mysqlbinlog.cc 2010-07-15 13:47:50 +0000 +++ b/client/mysqlbinlog.cc 2010-10-06 15:06:13 +0000 @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2004 MySQL AB +/* Copyright (c) 2001, 2010, 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 @@ -34,6 +34,7 @@ #include "sql_priv.h" #include "log_event.h" #include "sql_common.h" +#include // ORACLE_WELCOME_COPYRIGHT_NOTICE #define BIN_LOG_HEADER_SIZE 4 #define PROBE_HEADER_LEN (EVENT_LEN_OFFSET+4) @@ -1239,10 +1240,7 @@ static void print_version() static void usage() { print_version(); - puts("By Monty and Sasha, for your professional use\n\ -This software comes with NO WARRANTY: This is free software,\n\ -and you are welcome to modify and redistribute it under the GPL license.\n"); - + puts(ORACLE_WELCOME_COPYRIGHT_NOTICE("2001, 2010")); printf("\ Dumps a MySQL binary log in a format usable for viewing or for piping to\n\ the mysql command line client.\n\n"); === modified file 'client/mysqlcheck.c' --- a/client/mysqlcheck.c 2010-07-15 13:47:50 +0000 +++ b/client/mysqlcheck.c 2010-10-06 15:06:13 +0000 @@ -1,4 +1,4 @@ -/* Copyright (C) 2000 MySQL AB, 2009 Sun Microsystems, Inc +/* Copyright (c) 2000, 2010, 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 @@ -13,8 +13,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -/* By Jani Tolonen, 2001-04-20, MySQL Development Team */ - #define CHECK_VERSION "2.5.0" #include "client_priv.h" @@ -22,6 +20,7 @@ #include #include #include +#include /* ORACLE_WELCOME_COPYRIGHT_NOTICE */ /* Exit codes */ @@ -215,9 +214,7 @@ static void print_version(void) static void usage(void) { print_version(); - puts("By Jani Tolonen, 2001-04-20, MySQL Development Team.\n"); - puts("This software comes with ABSOLUTELY NO WARRANTY. This is free software,\n"); - puts("and you are welcome to modify and redistribute it under the GPL license.\n"); + puts(ORACLE_WELCOME_COPYRIGHT_NOTICE("2000, 2010")); puts("This program can be used to CHECK (-c, -m, -C), REPAIR (-r), ANALYZE (-a),"); puts("or OPTIMIZE (-o) tables. Some of the options (like -e or -q) can be"); puts("used at the same time. Not all options are supported by all storage engines."); === modified file 'client/mysqldump.c' --- a/client/mysqldump.c 2010-08-30 12:06:32 +0000 +++ b/client/mysqldump.c 2010-10-06 15:06:13 +0000 @@ -1,4 +1,4 @@ -/* Copyright 2000-2008 MySQL AB, 2008, 2009 Sun Microsystems, Inc. +/* Copyright (c) 2000, 2010, 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 @@ -51,6 +51,8 @@ #include "mysql_version.h" #include "mysqld_error.h" +#include /* ORACLE_WELCOME_COPYRIGHT_NOTICE */ + /* Exit codes */ #define EX_USAGE 1 @@ -584,8 +586,7 @@ static void short_usage_sub(void) static void usage(void) { print_version(); - puts("By Igor Romanenko, Monty, Jani & Sinisa."); - puts("This software comes with ABSOLUTELY NO WARRANTY. This is free software,\nand you are welcome to modify and redistribute it under the GPL license.\n"); + puts(ORACLE_WELCOME_COPYRIGHT_NOTICE("2000, 2010")); puts("Dumping structure and contents of MySQL databases and tables."); short_usage_sub(); print_defaults("my",load_default_groups); === modified file 'client/mysqlimport.c' --- a/client/mysqlimport.c 2010-07-15 11:13:30 +0000 +++ b/client/mysqlimport.c 2010-10-06 15:06:13 +0000 @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2006 MySQL AB, 2009 Sun Microsystems, Inc. +/* Copyright (c) 2000, 2010, 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 @@ -32,6 +32,8 @@ #include #endif +#include /* ORACLE_WELCOME_COPYRIGHT_NOTICE */ + /* Global Thread counter */ uint counter; @@ -191,8 +193,7 @@ static void print_version(void) static void usage(void) { print_version(); - puts("Copyright 2000-2008 MySQL AB, 2008 Sun Microsystems, Inc."); - puts("This software comes with ABSOLUTELY NO WARRANTY. This is free software,\nand you are welcome to modify and redistribute it under the GPL license.\n"); + puts(ORACLE_WELCOME_COPYRIGHT_NOTICE("2000, 2010")); printf("\ Loads tables from text files in various formats. The base name of the\n\ text file must be the name of the table that should be used.\n\ === modified file 'client/mysqlshow.c' --- a/client/mysqlshow.c 2010-07-15 13:47:50 +0000 +++ b/client/mysqlshow.c 2010-10-06 15:06:13 +0000 @@ -1,4 +1,4 @@ -/* Copyright (C) 2000-2006 MySQL AB +/* Copyright (c) 2000, 2010, 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 @@ -25,6 +25,7 @@ #include #include #include +#include /* ORACLE_WELCOME_COPYRIGHT_NOTICE */ static char * host=0, *opt_password=0, *user=0; static my_bool opt_show_keys= 0, opt_compress= 0, opt_count=0, opt_status= 0; @@ -247,8 +248,7 @@ static void print_version(void) static void usage(void) { print_version(); - puts("Copyright 2000-2008 MySQL AB, 2008 Sun Microsystems, Inc."); - puts("This software comes with ABSOLUTELY NO WARRANTY. This is free software,\nand you are welcome to modify and redistribute it under the GPL license.\n"); + puts(ORACLE_WELCOME_COPYRIGHT_NOTICE("2000, 2010)")); puts("Shows the structure of a MySQL database (databases, tables, and columns).\n"); printf("Usage: %s [OPTIONS] [database [table [column]]]\n",my_progname); puts("\n\ === modified file 'client/mysqlslap.c' --- a/client/mysqlslap.c 2010-07-15 11:13:30 +0000 +++ b/client/mysqlslap.c 2010-10-06 15:06:13 +0000 @@ -1,4 +1,4 @@ -/* Copyright (C) 2005 MySQL AB, 2009 Sun Microsystems, Inc. +/* Copyright (c) 2005, 2010, 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 @@ -11,12 +11,7 @@ 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - original idea: Brian Aker via playing with ab for too many years - coded by: Patrick Galbraith -*/ - + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /* MySQL Slap @@ -94,6 +89,7 @@ TODO: #include #endif #include +#include /* ORACLE_WELCOME_COPYRIGHT_NOTICE */ #ifdef __WIN__ #define srandom srand @@ -686,8 +682,7 @@ static void print_version(void) static void usage(void) { print_version(); - puts("Copyright (C) 2005 MySQL AB"); - puts("This software comes with ABSOLUTELY NO WARRANTY. This is free software,\nand you are welcome to modify and redistribute it under the GPL license.\n"); + puts(ORACLE_WELCOME_COPYRIGHT_NOTICE("2005, 2010")); puts("Run a query multiple times against the server.\n"); printf("Usage: %s [OPTIONS]\n",my_progname); print_defaults("my",load_default_groups); === modified file 'client/mysqltest.cc' --- a/client/mysqltest.cc 2010-10-04 12:42:16 +0000 +++ b/client/mysqltest.cc 2010-10-06 15:06:13 +0000 @@ -1,4 +1,4 @@ -/* Copyright (C) 2000 MySQL AB +/* Copyright (c) 2000, 2010, 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 @@ -52,6 +52,8 @@ #include #include +#include // ORACLE_WELCOME_COPYRIGHT_NOTICE + #ifdef __WIN__ #include #define SIGNAL_FMT "exception 0x%x" @@ -6260,8 +6262,7 @@ void print_version(void) void usage() { print_version(); - printf("MySQL AB, by Sasha, Matt, Monty & Jani\n"); - printf("This software comes with ABSOLUTELY NO WARRANTY\n\n"); + puts(ORACLE_WELCOME_COPYRIGHT_NOTICE("2000, 2010")); printf("Runs a test against the mysql server and compares output with a results file.\n\n"); printf("Usage: %s [OPTIONS] [database] < test_file\n", my_progname); my_print_help(my_long_options); === added file 'include/welcome_copyright_notice.h' --- a/include/welcome_copyright_notice.h 1970-01-01 00:00:00 +0000 +++ b/include/welcome_copyright_notice.h 2010-10-06 15:06:13 +0000 @@ -0,0 +1,31 @@ +/* Copyright (c) 2010, 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 + 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ + +#ifndef _welcome_copyright_notice_h_ +#define _welcome_copyright_notice_h_ + +/* + This define specifies copyright notice which is displayed by every MySQL + program on start, or on help screen. +*/ + +#define ORACLE_WELCOME_COPYRIGHT_NOTICE(years) \ + "Copyright (c) " years ", Oracle and/or its affiliates. All rights reserved.\n" \ + "\n" \ + "Oracle is a registered trademark of Oracle Corporation and/or its\n" \ + "affiliates. Other names may be trademarks of their respective\n" \ + "owners.\n" + +#endif /* _welcome_copyright_notice_h_ */ === modified file 'sql/mysqld.cc' --- a/sql/mysqld.cc 2010-10-04 12:42:16 +0000 +++ b/sql/mysqld.cc 2010-10-06 15:06:13 +0000 @@ -265,6 +265,8 @@ extern "C" sig_handler handle_segfault(i /* Constants */ +#include // ORACLE_WELCOME_COPYRIGHT_NOTICE + const char *show_comp_option_name[]= {"YES", "NO", "DISABLED"}; static const char *tc_heuristic_recover_names[]= @@ -6593,13 +6595,8 @@ static void usage(void) if (!default_collation_name) default_collation_name= (char*) default_charset_info->name; print_version(); - puts("\ -Copyright (C) 2000-2008 MySQL AB, by Monty and others.\n\ -Copyright (C) 2008,2009 Sun Microsystems, Inc.\n\ -This software comes with ABSOLUTELY NO WARRANTY. This is free software,\n\ -and you are welcome to modify and redistribute it under the GPL license\n\n\ -Starts the MySQL database server.\n"); - + puts(ORACLE_WELCOME_COPYRIGHT_NOTICE("2000, 2010")); + puts("Starts the MySQL database server.\n"); printf("Usage: %s [OPTIONS]\n", my_progname); if (!opt_verbose) puts("\nFor more help options (several pages), use mysqld --verbose --help."); --===============3758864700446107194== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/alexander.nozdrin@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: alexander.nozdrin@stripped\ # ls60rb2tq5dpyb5c # target_branch: file:///home/alik/MySQL/bzr/mysql-5.5-bugteam/ # testament_sha1: 6e11ce935daf4abbbb76400a5716a176fe16b81b # timestamp: 2010-10-06 19:07:30 +0400 # source_branch: file:///home/alik/MySQL/bzr/mysql-5.5/ # base_revision_id: bar@stripped # # Begin bundle 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 --===============3758864700446107194==--