Commit edbab357 authored by unknown's avatar unknown
Browse files

Merge mysql.com:/users/lthalmann/bkroot/mysql-5.0-rpl

into  mysql.com:/users/lthalmann/bk/MERGE/mysql-5.0-merge


ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
client/mysqldump.c:
  Merge main->rpl
mysql-test/r/mysqldump.result:
  Restore of main mysqldump test files in rpl tree (only added echo and one test case for bug 13926)
  Printouts not yet added to result file
mysql-test/t/mysqldump.test:
  Restore of main mysqldump test files in rpl tree (only added echo and one test case for bug 13926)
parents 665ebc05 447f2333
Loading
Loading
Loading
Loading
+53 −45
Original line number Diff line number Diff line
@@ -3309,6 +3309,8 @@ static char *primary_key_fields(const char *table_name)
  char show_keys_buff[15 + NAME_LEN * 2 + 3];
  uint result_length= 0;
  char *result= 0;
  char buff[NAME_LEN * 2 + 3];
  char *quoted_field;

  my_snprintf(show_keys_buff, sizeof(show_keys_buff),
              "SHOW KEYS FROM %s", table_name);
@@ -3332,8 +3334,10 @@ static char *primary_key_fields(const char *table_name)
  {
    /* Key is unique */
    do
      result_length += strlen(row[4]) + 1;      /* + 1 for ',' or \0 */
    while ((row = mysql_fetch_row(res)) && atoi(row[3]) > 1);
    {
      quoted_field= quote_name(row[4], buff, 0);
      result_length+= strlen(quoted_field) + 1; /* + 1 for ',' or \0 */
    } while ((row= mysql_fetch_row(res)) && atoi(row[3]) > 1);
  }

  /* Build the ORDER BY clause result */
@@ -3349,9 +3353,13 @@ static char *primary_key_fields(const char *table_name)
    }
    mysql_data_seek(res, 0);
    row= mysql_fetch_row(res);
    end = strmov(result, row[4]);
    quoted_field= quote_name(row[4], buff, 0);
    end= strmov(result, quoted_field);
    while ((row= mysql_fetch_row(res)) && atoi(row[3]) > 1)
      end = strxmov(end, ",", row[4], NullS);
    {
      quoted_field= quote_name(row[4], buff, 0);
      end= strxmov(end, ",", quoted_field, NullS);
    }
  }

cleanup:
+15 −0
Original line number Diff line number Diff line
@@ -91,3 +91,18 @@ c
---> Cleaning up...
DROP VIEW v1;
DROP TABLE t1;
create table t1(a int, b int);
insert into t1 values (1, 1), (1, 2), (1, 3);
create view  v1(a, b) as select a, sum(b) from t1 group by a;
explain v1;
Field	Type	Null	Key	Default	Extra
a	int(11)	YES		NULL	
b	decimal(32,0)	YES		NULL	
show create table v1;
View	Create View
v1	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a`,sum(`t1`.`b`) AS `b` from `t1` group by `t1`.`a`
select * from v1;
a	b
1	6
drop table t1;
drop view v1;
+199 −165
Original line number Diff line number Diff line
@@ -16,9 +16,9 @@ INSERT INTO t1 VALUES (1), (2);
--exec $MYSQL_DUMP --skip-create --skip-comments -X test t1
DROP TABLE t1;

#
# Bug #2005
#
--echo #
--echo # Bug #2005
--echo #

CREATE TABLE t1 (a decimal(64, 20));
INSERT INTO t1 VALUES ("1234567890123456789012345678901234567890"),
@@ -26,9 +26,9 @@ INSERT INTO t1 VALUES ("1234567890123456789012345678901234567890"),
--exec $MYSQL_DUMP --compact test t1
DROP TABLE t1;

#
# Bug #2055
#
--echo #
--echo # Bug #2055
--echo #

CREATE TABLE t1 (a double);
INSERT INTO t1 VALUES ('-9e999999');
@@ -38,9 +38,9 @@ INSERT INTO t1 VALUES ('-9e999999');
--exec $MYSQL_DUMP --compact test t1
DROP TABLE t1;

#
# Bug #3361 mysqldump quotes DECIMAL values inconsistently
#
--echo #
--echo # Bug #3361 mysqldump quotes DECIMAL values inconsistently
--echo #

CREATE TABLE t1 (a DECIMAL(10,5), b FLOAT);

@@ -69,28 +69,28 @@ INSERT INTO t1 VALUES (1, "test", "tes"), (2, "TEST", "TES");
--exec $MYSQL_DUMP --skip-create --compact -X test t1
DROP TABLE t1;

#
# Bug #1707
#
--echo #
--echo # Bug #1707
--echo #

CREATE TABLE t1 (`a"b"` char(2));
INSERT INTO t1 VALUES ("1\""), ("\"2");
--exec $MYSQL_DUMP --compact --skip-create -X test t1
DROP TABLE t1;

#
# Bug #1994
# Bug #4261
#
--echo #
--echo # Bug #1994
--echo # Bug #4261
--echo #

CREATE TABLE t1 (a  VARCHAR(255)) DEFAULT CHARSET koi8r;
INSERT INTO t1  VALUES (_koi8r x'C1C2C3C4C5'), (NULL);
--exec $MYSQL_DUMP --skip-comments --skip-extended-insert test t1
DROP TABLE t1;

#
# Bug #2634
#
--echo #
--echo # Bug #2634
--echo #

CREATE TABLE t1 (a int) ENGINE=MYISAM;
INSERT INTO t1 VALUES (1), (2);
@@ -98,17 +98,17 @@ INSERT INTO t1 VALUES (1), (2);
--exec $MYSQL_DUMP --skip-comments --compatible=mysql323 test t1
DROP TABLE t1;

#
# Bug #2592 'mysqldump doesn't quote "tricky" names correctly'
#
--echo #
--echo # Bug #2592 'mysqldump doesn't quote "tricky" names correctly'
--echo #

create table ```a` (i int);
--exec $MYSQL_DUMP --compact test
drop table ```a`;

#
# Bug #2591 "mysqldump quotes names inconsistently"
#
--echo #
--echo # Bug #2591 "mysqldump quotes names inconsistently"
--echo #

create table t1(a int);
--exec $MYSQL_DUMP --comments=0 test
@@ -119,9 +119,9 @@ set global sql_mode='ANSI_QUOTES';
set global sql_mode='';
drop table t1;

#
# Bug #2705 'mysqldump --tab extra output'
#
--echo #
--echo # Bug #2705 'mysqldump --tab extra output'
--echo #

create table t1(a int);
insert into t1 values (1),(2),(3);
@@ -135,9 +135,9 @@ insert into t1 values (1),(2),(3);
--exec rm $MYSQLTEST_VARDIR/tmp/t1.txt
drop table t1;

#
# Bug #6101: create database problem
#
--echo #
--echo # Bug #6101: create database problem
--echo #

--exec $MYSQL_DUMP --skip-comments --databases test

@@ -145,32 +145,34 @@ create database mysqldump_test_db character set latin2 collate latin2_bin;
--exec $MYSQL_DUMP --skip-comments --databases mysqldump_test_db
drop database mysqldump_test_db;

#
# Bug #7020
# Check that we don't dump in UTF8 in compatible mode by default,
# but use the default compiled values, or the values given in
# --default-character-set=xxx. However, we should dump in UTF8
# if it is explicitely set.
--echo #
--echo # Bug #7020
--echo # Check that we don't dump in UTF8 in compatible mode by default,
--echo # but use the default compiled values, or the values given in
--echo # --default-character-set=xxx. However, we should dump in UTF8
--echo # if it is explicitely set.

CREATE TABLE t1 (a  CHAR(10));
INSERT INTO t1  VALUES (_latin1 '');
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments test t1
#
# Bug#8063: make test mysqldump [ fail ]
# We cannot tes this command because its output depends
# on --default-character-set incompiled into "mysqldump" program.
# If the future we can move this command into a separate test with
# checking that "mysqldump" is compiled with "latin1"
#

--echo #
--echo # Bug#8063: make test mysqldump [ fail ]
--echo # We cannot tes this command because its output depends
--echo # on --default-character-set incompiled into "mysqldump" program.
--echo # If the future we can move this command into a separate test with
--echo # checking that "mysqldump" is compiled with "latin1"
--echo #

#--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --compatible=mysql323 test t1
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --compatible=mysql323 --default-character-set=cp850 test t1
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --default-character-set=cp850 --compatible=mysql323 test t1
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --default-character-set=utf8 --compatible=mysql323 test t1
DROP TABLE t1;

#
# WL #2319: Exclude Tables from dump
#
--echo #
--echo # WL #2319: Exclude Tables from dump
--echo #

CREATE TABLE t1 (a int);
CREATE TABLE t2 (a int);
@@ -180,18 +182,18 @@ INSERT INTO t2 VALUES (4),(5),(6);
DROP TABLE t1;
DROP TABLE t2;

#
#  Bug  #8830
#
--echo #
--echo #  Bug  #8830
--echo #

CREATE TABLE t1 (`b` blob);
INSERT INTO `t1` VALUES (0x602010000280100005E71A);
--exec $MYSQL_DUMP --skip-extended-insert --hex-blob test --skip-comments t1
DROP TABLE t1;

#
# Test for --insert-ignore
#
--echo #
--echo # Test for --insert-ignore
--echo #

CREATE TABLE t1 (a int);
INSERT INTO t1 VALUES (1),(2),(3);
@@ -200,10 +202,10 @@ INSERT INTO t1 VALUES (4),(5),(6);
--exec $MYSQL_DUMP --skip-comments --insert-ignore --delayed-insert test t1
DROP TABLE t1;

#
# Bug #10286: mysqldump -c crashes on table that has many fields with long
# names
# 
--echo #
--echo # Bug #10286: mysqldump -c crashes on table that has many fields with long
--echo # names
--echo # 
create table t1 (
 F_c4ca4238a0b923820dcc509a6f75849b int,
 F_c81e728d9d4c2f636f067f89cc14862c int,
@@ -539,18 +541,18 @@ insert into t1 (F_8d3bba7425e7c98c50f52ca1b52d3735) values (1);
--exec $MYSQL_DUMP --skip-comments -c test
drop table t1;

#
# Test for --add-drop-database
#
--echo #
--echo # Test for --add-drop-database
--echo #

CREATE TABLE t1 (a int);
INSERT INTO t1 VALUES (1),(2),(3);
--exec $MYSQL_DUMP --add-drop-database --skip-comments --databases test
DROP TABLE t1;

#
# Bug #9558 mysqldump --no-data db t1 t2 format still dumps data
#
--echo #
--echo # Bug #9558 mysqldump --no-data db t1 t2 format still dumps data
--echo #

CREATE DATABASE mysqldump_test_db;
USE mysqldump_test_db;
@@ -565,11 +567,11 @@ INSERT INTO t2 VALUES (1), (2);
DROP TABLE t1, t2;
DROP DATABASE mysqldump_test_db;

#
#  Testing with tables and databases that don't exists
#  or contains illegal characters
# (Bug #9358 mysqldump crashes if tablename starts with \)
#
--echo #
--echo #  Testing with tables and databases that don't exists
--echo #  or contains illegal characters
--echo # (Bug #9358 mysqldump crashes if tablename starts with \)
--echo #
create database mysqldump_test_db;
use mysqldump_test_db;
create table t1(a varchar(30) primary key, b int not null);
@@ -629,9 +631,9 @@ drop database mysqldump_test_db;
use test;


#
# Bug #9657 mysqldump xml ( -x ) does not format NULL fields correctly
#
--echo #
--echo # Bug #9657 mysqldump xml ( -x ) does not format NULL fields correctly
--echo #

create table t1 (a int(10));
create table t2 (pk int primary key auto_increment,
@@ -641,9 +643,10 @@ insert into t2 (a, b) values (NULL, NULL),(10, NULL),(NULL, "twenty"),(30, "thir
--exec $MYSQL_DUMP  --skip-comments --xml --no-create-info test
drop table t1, t2;

#
# BUG #12123
#
--echo #
--echo # BUG #12123
--echo #

create table t1 (a text character set utf8, b text character set latin1);
insert t1 values (0x4F736E616272C3BC636B, 0x4BF66C6E);
select * from t1;
@@ -654,15 +657,16 @@ select * from t1;

drop table t1;

#
# BUG#15328 Segmentation fault occured if my.cnf is invalid for escape sequence
#
--echo #
--echo # BUG#15328 Segmentation fault occured if my.cnf is invalid for escape sequence
--echo #

--exec $MYSQL_MY_PRINT_DEFAULTS --config-file=$MYSQL_TEST_DIR/std_data/bug15328.cnf mysqldump

#
# BUG #19025 mysqldump doesn't correctly dump "auto_increment = [int]"
#
--echo #
--echo # BUG #19025 mysqldump doesn't correctly dump "auto_increment = [int]"
--echo #

create table `t1` (
    t1_name varchar(255) default null,
    t1_id int(10) unsigned not null auto_increment,
@@ -689,9 +693,9 @@ show create table `t1`;

drop table `t1`;

#
# Bug #18536: wrong table order
#
--echo #
--echo # Bug #18536: wrong table order
--echo #

create table t1(a int);
create table t2(a int);
@@ -700,9 +704,10 @@ create table t3(a int);
--exec $MYSQL_DUMP --skip-comments --force --no-data test t3 t1 non_existing t2
drop table t1, t2, t3;

#
# Bug #21288: mysqldump segmentation fault when using --where
#
--echo #
--echo # Bug #21288: mysqldump segmentation fault when using --where
--echo #

create table t1 (a int);
--error 2
--exec $MYSQL_DUMP --skip-comments --force test t1 --where='xx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 2>&1
@@ -710,9 +715,9 @@ drop table t1;

--echo End of 4.1 tests

#
# Bug #10213 mysqldump crashes when dumping VIEWs(on MacOS X)
#
--echo #
--echo # Bug #10213 mysqldump crashes when dumping VIEWs(on MacOS X)
--echo #

create database db1;
use db1;
@@ -734,9 +739,9 @@ drop view v2;
drop database db1;
use test;

#
# Bug 10713 mysqldump includes database in create view and referenced tables
#
--echo #
--echo # Bug 10713 mysqldump includes database in create view and referenced tables
--echo #

# create table and views in db2
create database db2;
@@ -779,9 +784,9 @@ create view v1 as select * from t1;
drop view v1;
drop table t1;

#
# Bug #10213 mysqldump crashes when dumping VIEWs(on MacOS X)
#
--echo #
--echo # Bug #10213 mysqldump crashes when dumping VIEWs(on MacOS X)
--echo #

create database mysqldump_test_db;
use mysqldump_test_db;
@@ -803,18 +808,18 @@ drop view v2;
drop database mysqldump_test_db;
use test;

#
# Bug #9756
#
--echo #
--echo # Bug #9756
--echo #

CREATE TABLE t1 (a char(10));
INSERT INTO t1 VALUES ('\'');
--exec $MYSQL_DUMP --skip-comments test t1
DROP TABLE t1;

#
# Bug #10927 mysqldump: Can't reload dump with view that consist of other view
#
--echo #
--echo # Bug #10927 mysqldump: Can't reload dump with view that consist of other view
--echo #

create table t1(a int, b int, c varchar(30));

@@ -834,9 +839,9 @@ select v3.a from v3, v1 where v1.a=v3.a and v3.b=3 limit 1;
drop view v1, v2, v3;
drop table t1;

#
# Test for dumping triggers
#
--echo #
--echo # Test for dumping triggers
--echo #

CREATE TABLE t1 (a int, b bigint default NULL);
CREATE TABLE t2 (a int);
@@ -884,9 +889,9 @@ show tables;
show triggers;
DROP TABLE t1, t2;

#
# Bugs #9136, #12917: problems with --defaults-extra-file option
#
--echo #
--echo # Bugs #9136, #12917: problems with --defaults-extra-file option
--echo #

--system echo '[mysqltest1]' > $MYSQLTEST_VARDIR/tmp/tmp.cnf
--system echo 'port=1234' >> $MYSQLTEST_VARDIR/tmp/tmp.cnf
@@ -894,9 +899,9 @@ DROP TABLE t1, t2;
--exec $MYSQL_MY_PRINT_DEFAULTS -e $MYSQLTEST_VARDIR/tmp/tmp.cnf mysqltest1 mysqltest1
--system rm $MYSQLTEST_VARDIR/tmp/tmp.cnf

#
# Test of fix to BUG 12597
#
--echo #
--echo # Test of fix to BUG 12597
--echo #

DROP TABLE IF EXISTS `test1`;
CREATE TABLE `test1` (
@@ -932,9 +937,9 @@ DROP TRIGGER testref;
DROP TABLE test1;
DROP TABLE test2;

#
# BUG#9056 - mysqldump does not dump routines
#
--echo #
--echo # BUG#9056 - mysqldump does not dump routines
--echo #

--disable_warnings
DROP TABLE IF EXISTS t1;
@@ -981,9 +986,10 @@ DROP PROCEDURE bug9056_proc2;
DROP PROCEDURE `a'b`;
drop table t1;

#
# BUG# 13052 - mysqldump timestamp reloads broken
#
--echo #
--echo # BUG# 13052 - mysqldump timestamp reloads broken
--echo #

--disable_warnings
drop table if exists t1;
--enable_warnings
@@ -1003,9 +1009,10 @@ drop table t1;
set global time_zone=default;
set time_zone=default;

#
# Test of fix to BUG 13146 - ansi quotes break loading of triggers 
#
--echo #
--echo # Test of fix to BUG 13146 - ansi quotes break loading of triggers 
--echo #

--disable_warnings
DROP TABLE IF EXISTS `t1 test`;
DROP TABLE IF EXISTS `t2 test`;
@@ -1036,9 +1043,9 @@ DROP TRIGGER `test trig`;
DROP TABLE `t1 test`;
DROP TABLE `t2 test`;

#
# BUG# 12838 mysqldump -x with views exits with error 
#
--echo #
--echo # BUG# 12838 mysqldump -x with views exits with error 
--echo #

--disable_warnings
drop table if exists t1;
@@ -1060,10 +1067,10 @@ drop view v0;
drop view v1;
drop table t1;

#
# BUG#14554 - mysqldump does not separate words "ROW" and "BEGIN"
# for tables with trigger created in the IGNORE_SPACE sql mode.
#
--echo #
--echo # BUG#14554 - mysqldump does not separate words "ROW" and "BEGIN"
--echo # for tables with trigger created in the IGNORE_SPACE sql mode.
--echo #

SET @old_sql_mode = @@SQL_MODE;
SET SQL_MODE = IGNORE_SPACE;
@@ -1084,18 +1091,19 @@ SET SQL_MODE = @old_sql_mode;
DROP TRIGGER tr1;
DROP TABLE t1;

#
# Bug #13318: Bad result with empty field and --hex-blob
# 
--echo #
--echo # Bug #13318: Bad result with empty field and --hex-blob
--echo # 

create table t1 (a binary(1), b blob);
insert into t1 values ('','');
--exec $MYSQL_DUMP --skip-comments --skip-extended-insert --hex-blob test t1
--exec $MYSQL_DUMP --skip-comments --hex-blob test t1
drop table t1;

#
# Bug 14871 Invalid view dump output
#
--echo #
--echo # Bug 14871 Invalid view dump output
--echo #

create table t1 (a int);
insert into t1 values (289), (298), (234), (456), (789);
@@ -1122,9 +1130,9 @@ select * from v3 order by a;
drop table t1;
drop view v1, v2, v3, v4, v5;

#
# Bug #16878 dump of trigger
#
--echo #
--echo # Bug #16878 dump of trigger
--echo #

create table t1 (a int, created datetime);
create table t2 (b int, created datetime);
@@ -1152,11 +1160,10 @@ drop trigger tr1;
drop trigger tr2;
drop table t1, t2;

--echo #
--echo # Bug#18462 mysqldump does not dump view structures correctly
--echo #

#
# Bug#18462 mysqldump does not dump view structures correctly
#
#
create table t (qty int, price int);
insert into t values(3, 50);
insert into t values(5, 51);
@@ -1173,11 +1180,11 @@ drop view v2;
drop table t;


#
# Bug#14857 Reading dump files with single statement stored routines fails.
# fixed by patch for bug#16878
#
#
--echo #
--echo # Bug#14857 Reading dump files with single statement stored routines fails.
--echo # fixed by patch for bug#16878
--echo #

DELIMITER |;
/*!50003 CREATE FUNCTION `f`() RETURNS bigint(20)
return 42 */|
@@ -1189,10 +1196,10 @@ show create procedure p;
drop function f;
drop procedure p;

#
# Bug #17371 Unable to dump a schema with invalid views
#
#
--echo #
--echo # Bug #17371 Unable to dump a schema with invalid views
--echo #

create table t1 ( id serial );
create view v1 as select * from t1;
drop table t1;
@@ -1203,9 +1210,9 @@ drop table t1;
--echo } mysqldump
drop view v1;

# BUG#17201 Spurious 'DROP DATABASE' in output,
# also confusion between tables and views.
# Example code from Markus Popp
--echo # BUG#17201 Spurious 'DROP DATABASE' in output,
--echo # also confusion between tables and views.
--echo # Example code from Markus Popp

create database mysqldump_test_db;
use mysqldump_test_db;
@@ -1220,7 +1227,9 @@ drop view v1;
drop table t1;
drop database mysqldump_test_db;

# Bug21014 Segmentation fault of mysqldump on view
--echo #
--echo # Bug21014 Segmentation fault of mysqldump on view
--echo #

create database mysqldump_tables;
use mysqldump_tables;
@@ -1237,7 +1246,9 @@ drop database mysqldump_views;
drop table mysqldump_tables.basetable;
drop database mysqldump_tables;

# Bug20221 Dumping of multiple databases containing view(s) yields maleformed dumps
--echo #
--echo # Bug20221 Dumping of multiple databases containing view(s) yields maleformed dumps
--echo #

create database mysqldump_dba;
use mysqldump_dba;
@@ -1276,9 +1287,9 @@ drop table t1;
drop database mysqldump_dbb;
use test;

#
# Bug#21215 mysqldump creating incomplete backups without warning
#
--echo #
--echo # Bug#21215 mysqldump creating incomplete backups without warning
--echo #

# Create user without sufficient privs to perform the requested operation
create user mysqltest_1@localhost;
@@ -1318,12 +1329,12 @@ grant REPLICATION CLIENT on *.* to mysqltest_1@localhost;
drop table t1;
drop user mysqltest_1@localhost;

#
# Bug #21527 mysqldump incorrectly tries to LOCK TABLES on the 
# information_schema database.
#
# Bug #21424 mysqldump failing to export/import views
#
--echo #
--echo # Bug #21527 mysqldump incorrectly tries to LOCK TABLES on the 
--echo # information_schema database.
--echo #
--echo # Bug #21424 mysqldump failing to export/import views
--echo #

# Do as root
connect (root,localhost,root,,test,$MASTER_MYPORT,$MASTER_MYSOCK);
@@ -1357,8 +1368,10 @@ drop user myDB_User;
drop database mysqldump_myDB;
flush privileges;

# Bug #21424 continues from here.
# Restore. Flush Privileges test ends.  
--echo # Bug #21424 continues from here.
--echo # Restore. Flush Privileges test ends.  
--echo #

--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21527.sql;

# Do as a user
@@ -1380,4 +1393,25 @@ drop user myDB_User;
drop database mysqldump_myDB;
use test;

--echo End of 5.0 tests
--echo #
--echo # BUG#13926: --order-by-primary fails if PKEY contains quote character
--echo #

--disable_warnings
DROP TABLE IF EXISTS `t1`;
CREATE TABLE `t1` (
  `a b` INT,
  `c"d` INT,
  `e``f` INT,
  PRIMARY KEY (`a b`, `c"d`, `e``f`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
insert into t1 values (0815, 4711, 2006);

--exec $MYSQL_DUMP --skip-comments --compatible=ansi --order-by-primary test t1
--exec $MYSQL_DUMP --skip-comments --order-by-primary test t1
DROP TABLE `t1`;
--enable_warnings

--echo #
--echo # End of 5.0 tests
--echo #
+20 −0
Original line number Diff line number Diff line
@@ -129,3 +129,23 @@ DROP TABLE t1;
--sync_with_master
--connection master

#
# BUG#19419: "VIEW: View that the column name is different
#             by master and slave is made".
#
connection master;
create table t1(a int, b int);
insert into t1 values (1, 1), (1, 2), (1, 3);
create view  v1(a, b) as select a, sum(b) from t1 group by a;

sync_slave_with_master;
explain v1;
show create table v1;
select * from v1;

connection master;
drop table t1;
drop view v1;

sync_slave_with_master;
+13 −0
Original line number Diff line number Diff line
@@ -4765,6 +4765,19 @@ mysql_execute_command(THD *thd)
        }
        append_identifier(thd, &buff, first_table->table_name,
                          first_table->table_name_length);
        if (lex->view_list.elements)
        {
          List_iterator_fast<LEX_STRING> names(lex->view_list);
          LEX_STRING *name;
          int i;
          
          for (i= 0; name= names++; i++)
          {
            buff.append(i ? ", " : "(");
            append_identifier(thd, &buff, name->str, name->length);
          }
          buff.append(')');
        }
        buff.append(STRING_WITH_LEN(" AS "));
        buff.append(first_table->source.str, first_table->source.length);

Loading