List:Commits« Previous MessageNext Message »
From:msvensson Date:May 10 2006 3:49pm
Subject:bk commit into 5.1 tree (msvensson:1.2375)
View as plain text  
Below is the list of changes that have just been committed into a local
5.1 repository of msvensson. When msvensson does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet
  1.2375 06/05/10 15:49:33 msvensson@neptunus.(none) +7 -0
  Merge neptunus.(none):/home/msvensson/mysql/tmp/tmp_merge
  into  neptunus.(none):/home/msvensson/mysql/mysql-5.1

  mysql-test/t/mysqldump.test
    1.96 06/05/10 15:49:29 msvensson@neptunus.(none) +8 -10
    Manual merge 5.0 -> 5-1

  mysql-test/r/mysqldump.result
    1.105 06/05/10 15:49:29 msvensson@neptunus.(none) +0 -0
    Manual merge 5.0 -> 5-1

  sql/sql_show.cc
    1.332 06/05/10 15:47:14 msvensson@neptunus.(none) +0 -0
    Auto merged

  sql/set_var.cc
    1.186 06/05/10 15:47:14 msvensson@neptunus.(none) +0 -0
    Auto merged

  mysql-test/r/symlink.result
    1.24 06/05/10 15:47:14 msvensson@neptunus.(none) +0 -0
    Auto merged

  mysql-test/r/gis-rtree.result
    1.17 06/05/10 15:47:13 msvensson@neptunus.(none) +0 -0
    Auto merged

  mysql-test/r/auto_increment.result
    1.38 06/05/10 15:47:13 msvensson@neptunus.(none) +0 -0
    Auto merged

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	msvensson
# Host:	neptunus.(none)
# Root:	/home/msvensson/mysql/mysql-5.1/RESYNC

--- 1.331/sql/sql_show.cc	2006-05-08 22:05:37 +02:00
+++ 1.332/sql/sql_show.cc	2006-05-10 15:47:14 +02:00
@@ -1022,8 +1022,8 @@
     has_default= (field->type() != FIELD_TYPE_BLOB &&
                   !(field->flags & NO_DEFAULT_VALUE_FLAG) &&
 		  field->unireg_check != Field::NEXT_NUMBER &&
-                  !((thd->variables.sql_mode & (MODE_MYSQL323 | MODE_MYSQL40))
&&
-                    has_now_default));
+                  !((thd->variables.sql_mode & (MODE_MYSQL323 | MODE_MYSQL40))
+		    && has_now_default));
 
     if (has_default)
     {
@@ -1052,8 +1052,7 @@
         packet->append(tmp);
     }
 
-    if (!(thd->variables.sql_mode & MODE_NO_FIELD_OPTIONS) &&
-        table->timestamp_field == field && 
+    if (!limited_mysql_mode && table->timestamp_field == field && 
         field->unireg_check != Field::TIMESTAMP_DN_FIELD)
       packet->append(STRING_WITH_LEN(" ON UPDATE CURRENT_TIMESTAMP"));
 
@@ -1181,6 +1180,25 @@
       packet->append(file->table_type());
 #endif
     }
+
+    /*
+      Add AUTO_INCREMENT=... if there is an AUTO_INCREMENT column,
+      and NEXT_ID > 1 (the default).  We must not print the clause
+      for engines that do not support this as it would break the
+      import of dumps, but as of this writing, the test for whether
+      AUTO_INCREMENT columns are allowed and wether AUTO_INCREMENT=...
+      is supported is identical, !(file->table_flags() & HA_NO_AUTO_INCREMENT))
+      Because of that, we do not explicitly test for the feature,
+      but may extrapolate its existence from that of an AUTO_INCREMENT column.
+    */
+
+    if(create_info.auto_increment_value > 1)
+    {
+      packet->append(" AUTO_INCREMENT=", 16);
+      end= longlong10_to_str(create_info.auto_increment_value, buff,10);
+      packet->append(buff, (uint) (end - buff));
+    }
+
     
     if (share->table_charset &&
 	!(thd->variables.sql_mode & MODE_MYSQL323) &&

--- 1.37/mysql-test/r/auto_increment.result	2006-01-23 12:16:57 +01:00
+++ 1.38/mysql-test/r/auto_increment.result	2006-05-10 15:47:13 +02:00
@@ -355,6 +355,30 @@
 Table	Op	Msg_type	Msg_text
 test.t1	check	status	OK
 DROP TABLE IF EXISTS t1;
+CREATE TABLE `t1` (
+t1_name VARCHAR(255) DEFAULT NULL,
+t1_id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
+KEY (t1_name),
+PRIMARY KEY (t1_id)
+) AUTO_INCREMENT = 1000;
+INSERT INTO t1 (t1_name) VALUES('MySQL');
+INSERT INTO t1 (t1_name) VALUES('MySQL');
+INSERT INTO t1 (t1_name) VALUES('MySQL');
+SELECT * from t1;
+t1_name	t1_id
+MySQL	1000
+MySQL	1001
+MySQL	1002
+SHOW CREATE TABLE `t1`;
+Table	Create Table
+t1	CREATE TABLE `t1` (
+  `t1_name` varchar(255) default NULL,
+  `t1_id` int(10) unsigned NOT NULL auto_increment,
+  PRIMARY KEY  (`t1_id`),
+  KEY `t1_name` (`t1_name`)
+) ENGINE=MyISAM AUTO_INCREMENT=1003 DEFAULT CHARSET=latin1
+DROP TABLE `t1`;
+End of 4.1 tests
 CREATE TABLE t1 ( `a` int(11) NOT NULL auto_increment, `b` int(11) default NULL,PRIMARY
KEY  (`a`),UNIQUE KEY `b` (`b`));
 insert into t1 (b) values (1);
 replace into t1 (b) values (2), (1), (3);

--- 1.23/mysql-test/r/symlink.result	2006-02-22 10:09:51 +01:00
+++ 1.24/mysql-test/r/symlink.result	2006-05-10 15:47:14 +02:00
@@ -40,7 +40,7 @@
   `b` char(16) NOT NULL,
   `c` int(11) NOT NULL,
   PRIMARY KEY (`a`)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX
DIRECTORY='MYSQLTEST_VARDIR/run/'
+) ENGINE=MyISAM AUTO_INCREMENT=16725 DEFAULT CHARSET=latin1 DATA
DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
 alter table t9 rename t8, add column d int not null;
 alter table t8 rename t7;
 rename table t7 to t9;
@@ -53,7 +53,7 @@
   `c` int(11) NOT NULL,
   `d` int(11) NOT NULL,
   PRIMARY KEY (`a`)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX
DIRECTORY='MYSQLTEST_VARDIR/run/'
+) ENGINE=MyISAM AUTO_INCREMENT=16725 DEFAULT CHARSET=latin1 DATA
DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
 Got one of the listed errors
 Got one of the listed errors
 Got one of the listed errors
@@ -71,7 +71,7 @@
   `c` int(11) NOT NULL,
   `d` int(11) NOT NULL,
   PRIMARY KEY (`a`)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX
DIRECTORY='MYSQLTEST_VARDIR/run/'
+) ENGINE=MyISAM AUTO_INCREMENT=16725 DEFAULT CHARSET=latin1 DATA
DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
 drop database mysqltest;
 create table t1 (a int not null) engine=myisam;
 show create table t1;

--- 1.185/sql/set_var.cc	2006-05-01 09:14:28 +02:00
+++ 1.186/sql/set_var.cc	2006-05-10 15:47:14 +02:00
@@ -3413,9 +3413,9 @@
 		MODE_NO_KEY_OPTIONS | MODE_NO_TABLE_OPTIONS |
 		MODE_NO_FIELD_OPTIONS | MODE_NO_AUTO_CREATE_USER);
   if (sql_mode & MODE_MYSQL40)
-    sql_mode|= MODE_NO_FIELD_OPTIONS | MODE_HIGH_NOT_PRECEDENCE;
+    sql_mode|= MODE_HIGH_NOT_PRECEDENCE;
   if (sql_mode & MODE_MYSQL323)
-    sql_mode|= MODE_NO_FIELD_OPTIONS | MODE_HIGH_NOT_PRECEDENCE;
+    sql_mode|= MODE_HIGH_NOT_PRECEDENCE;
   if (sql_mode & MODE_TRADITIONAL)
     sql_mode|= (MODE_STRICT_TRANS_TABLES | MODE_STRICT_ALL_TABLES |
                 MODE_NO_ZERO_IN_DATE | MODE_NO_ZERO_DATE |

--- 1.104/mysql-test/r/mysqldump.result	2006-05-04 05:28:20 +02:00
+++ 1.105/mysql-test/r/mysqldump.result	2006-05-10 15:49:29 +02:00
@@ -1701,6 +1701,44 @@
 a	b
 Osnabrück	Köln
 drop table t1;
+create table `t1` (
+t1_name varchar(255) default null,
+t1_id int(10) unsigned not null auto_increment,
+key (t1_name),
+primary key (t1_id)
+) auto_increment = 1000 default charset=latin1;
+insert into t1 (t1_name) values('bla');
+insert into t1 (t1_name) values('bla');
+insert into t1 (t1_name) values('bla');
+select * from t1;
+t1_name	t1_id
+bla	1000
+bla	1001
+bla	1002
+show create table `t1`;
+Table	Create Table
+t1	CREATE TABLE `t1` (
+  `t1_name` varchar(255) default NULL,
+  `t1_id` int(10) unsigned NOT NULL auto_increment,
+  PRIMARY KEY  (`t1_id`),
+  KEY `t1_name` (`t1_name`)
+) ENGINE=MyISAM AUTO_INCREMENT=1003 DEFAULT CHARSET=latin1
+DROP TABLE `t1`;
+select * from t1;
+t1_name	t1_id
+bla	1000
+bla	1001
+bla	1002
+show create table `t1`;
+Table	Create Table
+t1	CREATE TABLE `t1` (
+  `t1_name` varchar(255) default NULL,
+  `t1_id` int(10) unsigned NOT NULL auto_increment,
+  PRIMARY KEY  (`t1_id`),
+  KEY `t1_name` (`t1_name`)
+) ENGINE=MyISAM AUTO_INCREMENT=1003 DEFAULT CHARSET=latin1
+drop table `t1`;
+End of 4.1 tests
 create table t1 (a binary(1), b blob);
 insert into t1 values ('','');
 

--- 1.95/mysql-test/t/mysqldump.test	2006-05-03 23:12:21 +02:00
+++ 1.96/mysql-test/t/mysqldump.test	2006-05-10 15:49:29 +02:00
@@ -713,6 +713,35 @@
 drop table t1;
 
 #
+# BUG #19025 mysqldump doesn't correctly dump "auto_increment = [int]"
+#
+create table `t1` (
+    t1_name varchar(255) default null,
+    t1_id int(10) unsigned not null auto_increment,
+    key (t1_name),
+    primary key (t1_id)
+) auto_increment = 1000 default charset=latin1;
+
+insert into t1 (t1_name) values('bla');
+insert into t1 (t1_name) values('bla');
+insert into t1 (t1_name) values('bla');
+
+select * from t1;
+
+show create table `t1`;
+
+--exec $MYSQL_DUMP --skip-comments test t1 > $MYSQLTEST_VARDIR/tmp/bug19025.sql
+DROP TABLE `t1`;
+
+--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/bug19025.sql
+
+select * from t1;
+
+show create table `t1`;
+
+drop table `t1`;
+
+--echo End of 4.1 tests
 # Bug #13318: Bad result with empty field and --hex-blob
 # 
 create table t1 (a binary(1), b blob);
@@ -721,7 +750,6 @@
 --exec $MYSQL_DUMP --skip-comments --hex-blob test t1
 drop table t1;
 
-# End of 4.1 tests
 
 #
 # dump of view

--- 1.16/mysql-test/r/gis-rtree.result	2006-02-22 10:09:49 +01:00
+++ 1.17/mysql-test/r/gis-rtree.result	2006-05-10 15:47:13 +02:00
@@ -294,7 +294,7 @@
   `g` geometry NOT NULL,
   PRIMARY KEY (`fid`),
   SPATIAL KEY `g` (`g`(32))
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
+) ENGINE=MyISAM AUTO_INCREMENT=101 DEFAULT CHARSET=latin1
 SELECT count(*) FROM t2;
 count(*)
 100
Thread
bk commit into 5.1 tree (msvensson:1.2375)msvensson10 May