From: Davi Arnaut Date: February 24 2009 7:40am Subject: bzr commit into mysql-5.1-bugteam branch (Davi.Arnaut:2811) Bug#36540 List-Archive: http://lists.mysql.com/commits/67291 X-Bug: 36540 Message-Id: <200902240740.n1O7eVkU008288@rhel5-ia64-a.mysql.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============4299015672258898679==" --===============4299015672258898679== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///data0/my/darnaut/mysql-repo/work/36540-5.1/ based on revid:alexey.kopytov@stripped 2811 Davi Arnaut 2009-02-24 Bug#36540: CREATE EVENT and ALTER EVENT statements fail with large server_id The problem is that creating a event could fail if the value of the variable server_id didn't fit in the originator column of the event system table. The cause is two-fold: it was possible to set server_id to a value outside the documented range (from 1 to 2^32-1) and the originator column of the event table didn't have enough room for values in this range. The log tables (general_log and slow_log) also don't have a proper column type to store the server_id and having a large server_id value could prevent queries from being logged. The solution is to ensure that all system tables that store the server_id value have a proper column type (int unsigned) and that the variable can't be set to a value that is not within the range. The default value of the server_id variable is now 1. @ mysql-test/r/events_bugs.result Add test case result for Bug#36540 @ mysql-test/r/log_tables.result Update column type. @ mysql-test/r/system_mysql_db.result Update column type. @ mysql-test/r/variables.result Add test case result for server_id value range. @ mysql-test/suite/sys_vars/inc/server_id_basic.inc New defautl value for server_id. @ mysql-test/suite/sys_vars/r/server_id_basic_32.result Update test case results. @ mysql-test/suite/sys_vars/r/server_id_basic_64.result Update test case results. @ mysql-test/t/events_bugs.test Add test case for Bug#36540 @ mysql-test/t/log_tables.test Fix column type. @ mysql-test/t/variables.test Add test case for server_id value range. @ scripts/mysql_system_tables.sql Columns that store the server_id value must be of type INT UNSIGNED, fix event (originator), general_log and slow_log (server_id) tables in accordance. @ scripts/mysql_system_tables_fix.sql Columns that store the server_id value must be of type INT UNSIGNED, fix event (originator), general_log and slow_log (server_id) tables in accordance. @ sql/mysqld.cc Set default, min and max values for the server_id variable. Unfortunately we can't easily change server_id variable type from ulong to uint32 because of the sys_var classes. modified: mysql-test/r/events_bugs.result mysql-test/r/log_tables.result mysql-test/r/system_mysql_db.result mysql-test/r/variables.result mysql-test/suite/sys_vars/inc/server_id_basic.inc mysql-test/suite/sys_vars/r/server_id_basic_32.result mysql-test/suite/sys_vars/r/server_id_basic_64.result mysql-test/t/events_bugs.test mysql-test/t/log_tables.test mysql-test/t/variables.test scripts/mysql_system_tables.sql scripts/mysql_system_tables_fix.sql sql/mysqld.cc === modified file 'mysql-test/r/events_bugs.result' --- a/mysql-test/r/events_bugs.result 2009-01-23 12:22:05 +0000 +++ b/mysql-test/r/events_bugs.result 2009-02-24 07:35:55 +0000 @@ -736,6 +736,17 @@ select replace(@full_mode, 'ALLOW_INVALI select name from mysql.event where name = 'p' and sql_mode = @full_mode; name drop event e1; +SET @old_server_id = @@GLOBAL.server_id; +SET GLOBAL server_id = (1 << 32) - 1; +SELECT @@GLOBAL.server_id; +@@GLOBAL.server_id +4294967295 +CREATE EVENT ev1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +SELECT event_name, originator FROM INFORMATION_SCHEMA.EVENTS; +event_name originator +ev1 4294967295 +DROP EVENT ev1; +SET GLOBAL server_id = @old_server_id; DROP DATABASE events_test; SET GLOBAL event_scheduler= 'ON'; SET @@global.concurrent_insert= @concurrent_insert; === modified file 'mysql-test/r/log_tables.result' --- a/mysql-test/r/log_tables.result 2008-11-13 19:19:00 +0000 +++ b/mysql-test/r/log_tables.result 2009-02-24 07:35:55 +0000 @@ -56,7 +56,7 @@ general_log CREATE TABLE `general_log` ( `event_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `user_host` mediumtext NOT NULL, `thread_id` int(11) NOT NULL, - `server_id` int(11) NOT NULL, + `server_id` int(10) unsigned NOT NULL, `command_type` varchar(64) NOT NULL, `argument` mediumtext NOT NULL ) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='General log' @@ -65,7 +65,7 @@ Field Type Null Key Default Extra event_time timestamp NO CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP user_host mediumtext NO NULL thread_id int(11) NO NULL -server_id int(11) NO NULL +server_id int(10) unsigned NO NULL command_type varchar(64) NO NULL argument mediumtext NO NULL show create table mysql.slow_log; @@ -80,7 +80,7 @@ slow_log CREATE TABLE `slow_log` ( `db` varchar(512) NOT NULL, `last_insert_id` int(11) NOT NULL, `insert_id` int(11) NOT NULL, - `server_id` int(11) NOT NULL, + `server_id` int(10) unsigned NOT NULL, `sql_text` mediumtext NOT NULL ) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='Slow log' show fields from mysql.slow_log; @@ -94,7 +94,7 @@ rows_examined int(11) NO NULL db varchar(512) NO NULL last_insert_id int(11) NO NULL insert_id int(11) NO NULL -server_id int(11) NO NULL +server_id int(10) unsigned NO NULL sql_text mediumtext NO NULL flush logs; flush tables; @@ -167,7 +167,7 @@ general_log CREATE TABLE `general_log` ( `event_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `user_host` mediumtext NOT NULL, `thread_id` int(11) NOT NULL, - `server_id` int(11) NOT NULL, + `server_id` int(10) unsigned NOT NULL, `command_type` varchar(64) NOT NULL, `argument` mediumtext NOT NULL ) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='General log' @@ -183,7 +183,7 @@ slow_log CREATE TABLE `slow_log` ( `db` varchar(512) NOT NULL, `last_insert_id` int(11) NOT NULL, `insert_id` int(11) NOT NULL, - `server_id` int(11) NOT NULL, + `server_id` int(10) unsigned NOT NULL, `sql_text` mediumtext NOT NULL ) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='Slow log' alter table mysql.general_log engine=myisam; @@ -194,7 +194,7 @@ general_log CREATE TABLE `general_log` ( `event_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `user_host` mediumtext NOT NULL, `thread_id` int(11) NOT NULL, - `server_id` int(11) NOT NULL, + `server_id` int(10) unsigned NOT NULL, `command_type` varchar(64) NOT NULL, `argument` mediumtext NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='General log' @@ -210,7 +210,7 @@ slow_log CREATE TABLE `slow_log` ( `db` varchar(512) NOT NULL, `last_insert_id` int(11) NOT NULL, `insert_id` int(11) NOT NULL, - `server_id` int(11) NOT NULL, + `server_id` int(10) unsigned NOT NULL, `sql_text` mediumtext NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Slow log' set global general_log='ON'; @@ -268,7 +268,7 @@ CREATE TABLE `general_log` ( ON UPDATE CURRENT_TIMESTAMP, `user_host` mediumtext NOT NULL, `thread_id` int(11) NOT NULL, -`server_id` int(11) NOT NULL, +`server_id` int(10) unsigned NOT NULL, `command_type` varchar(64) NOT NULL, `argument` mediumtext NOT NULL ) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='General log'; @@ -283,7 +283,7 @@ ON UPDATE CURRENT_TIMESTAMP, `db` varchar(512) NOT NULL, `last_insert_id` int(11) NOT NULL, `insert_id` int(11) NOT NULL, -`server_id` int(11) NOT NULL, +`server_id` int(10) unsigned NOT NULL, `sql_text` mediumtext NOT NULL ) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='Slow log'; set global general_log='ON'; === modified file 'mysql-test/r/system_mysql_db.result' --- a/mysql-test/r/system_mysql_db.result 2008-02-28 11:21:44 +0000 +++ b/mysql-test/r/system_mysql_db.result 2009-02-24 07:35:55 +0000 @@ -227,7 +227,7 @@ event CREATE TABLE `event` ( `on_completion` enum('DROP','PRESERVE') NOT NULL DEFAULT 'DROP', `sql_mode` set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') NOT NULL DEFAULT '', `comment` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', - `originator` int(10) NOT NULL, + `originator` int(10) unsigned NOT NULL, `time_zone` char(64) CHARACTER SET latin1 NOT NULL DEFAULT 'SYSTEM', `character_set_client` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL, `collation_connection` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL, @@ -241,7 +241,7 @@ general_log CREATE TABLE `general_log` ( `event_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `user_host` mediumtext NOT NULL, `thread_id` int(11) NOT NULL, - `server_id` int(11) NOT NULL, + `server_id` int(10) unsigned NOT NULL, `command_type` varchar(64) NOT NULL, `argument` mediumtext NOT NULL ) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='General log' @@ -257,7 +257,7 @@ slow_log CREATE TABLE `slow_log` ( `db` varchar(512) NOT NULL, `last_insert_id` int(11) NOT NULL, `insert_id` int(11) NOT NULL, - `server_id` int(11) NOT NULL, + `server_id` int(10) unsigned NOT NULL, `sql_text` mediumtext NOT NULL ) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='Slow log' show tables; === modified file 'mysql-test/r/variables.result' --- a/mysql-test/r/variables.result 2009-01-30 13:44:49 +0000 +++ b/mysql-test/r/variables.result 2009-02-24 07:35:55 +0000 @@ -1341,3 +1341,33 @@ SET @@session.thread_stack= 7; ERROR HY000: Variable 'thread_stack' is a read only variable SET @@global.thread_stack= 7; ERROR HY000: Variable 'thread_stack' is a read only variable +SET @old_server_id = @@GLOBAL.server_id; +SET GLOBAL server_id = (1 << 32) - 1; +SELECT @@GLOBAL.server_id; +@@GLOBAL.server_id +4294967295 +SET GLOBAL server_id = (1 << 32); +Warnings: +Warning 1292 Truncated incorrect server-id value: '4294967296' +SELECT @@GLOBAL.server_id; +@@GLOBAL.server_id +4294967295 +SET GLOBAL server_id = (1 << 64); +Warnings: +Warning 1292 Truncated incorrect server-id value: '0' +SELECT @@GLOBAL.server_id; +@@GLOBAL.server_id +1 +SET GLOBAL server_id = 0; +Warnings: +Warning 1292 Truncated incorrect server-id value: '0' +SELECT @@GLOBAL.server_id; +@@GLOBAL.server_id +1 +SET GLOBAL server_id = -1; +Warnings: +Warning 1292 Truncated incorrect server-id value: '0' +SELECT @@GLOBAL.server_id; +@@GLOBAL.server_id +1 +SET GLOBAL server_id = @old_server_id; === modified file 'mysql-test/suite/sys_vars/inc/server_id_basic.inc' --- a/mysql-test/suite/sys_vars/inc/server_id_basic.inc 2008-07-23 14:06:44 +0000 +++ b/mysql-test/suite/sys_vars/inc/server_id_basic.inc 2009-02-24 07:35:55 +0000 @@ -54,7 +54,7 @@ SELECT @@global.server_id; ################################################################### SET @@global.server_id = DEFAULT; -SELECT @@global.server_id = 0; +SELECT @@global.server_id = 1; --echo '#--------------------FN_DYNVARS_144_03-------------------------#' ################################################################################## === modified file 'mysql-test/suite/sys_vars/r/server_id_basic_32.result' --- a/mysql-test/suite/sys_vars/r/server_id_basic_32.result 2008-07-23 14:06:44 +0000 +++ b/mysql-test/suite/sys_vars/r/server_id_basic_32.result 2009-02-24 07:35:55 +0000 @@ -8,17 +8,19 @@ SET @@global.server_id = 500000; SET @@global.server_id = DEFAULT; SELECT @@global.server_id; @@global.server_id -0 +1 '#--------------------FN_DYNVARS_144_02-------------------------#' SET @@global.server_id = DEFAULT; -SELECT @@global.server_id = 0; -@@global.server_id = 0 +SELECT @@global.server_id = 1; +@@global.server_id = 1 1 '#--------------------FN_DYNVARS_144_03-------------------------#' SET @@global.server_id = 0; +Warnings: +Warning 1292 Truncated incorrect server-id value: '0' SELECT @@global.server_id; @@global.server_id -0 +1 SET @@global.server_id = 1; SELECT @@global.server_id; @@global.server_id @@ -52,13 +54,17 @@ SET @@local.server_id = 4; ERROR HY000: Variable 'server_id' is a GLOBAL variable and should be set with SET GLOBAL '#------------------FN_DYNVARS_144_05-----------------------#' SET @@global.server_id = -1; +Warnings: +Warning 1292 Truncated incorrect server-id value: '0' SELECT @@global.server_id; @@global.server_id -0 +1 SET @@global.server_id = -2147483648; +Warnings: +Warning 1292 Truncated incorrect server-id value: '0' SELECT @@global.server_id; @@global.server_id -0 +1 SET @@global.server_id = 2147483649*2; Warnings: Warning 1292 Truncated incorrect server-id value: '4294967298' @@ -93,9 +99,11 @@ SELECT @@global.server_id; @@global.server_id 1 SET @@global.server_id = FALSE; +Warnings: +Warning 1292 Truncated incorrect server-id value: '0' SELECT @@global.server_id; @@global.server_id -0 +1 '#---------------------FN_DYNVARS_001_09----------------------#' SET @@global.server_id = 512; SELECT @@server_id = @@global.server_id; === modified file 'mysql-test/suite/sys_vars/r/server_id_basic_64.result' --- a/mysql-test/suite/sys_vars/r/server_id_basic_64.result 2008-07-23 14:06:44 +0000 +++ b/mysql-test/suite/sys_vars/r/server_id_basic_64.result 2009-02-24 07:35:55 +0000 @@ -8,17 +8,19 @@ SET @@global.server_id = 500000; SET @@global.server_id = DEFAULT; SELECT @@global.server_id; @@global.server_id -0 +1 '#--------------------FN_DYNVARS_144_02-------------------------#' SET @@global.server_id = DEFAULT; -SELECT @@global.server_id = 0; -@@global.server_id = 0 +SELECT @@global.server_id = 1; +@@global.server_id = 1 1 '#--------------------FN_DYNVARS_144_03-------------------------#' SET @@global.server_id = 0; +Warnings: +Warning 1292 Truncated incorrect server-id value: '0' SELECT @@global.server_id; @@global.server_id -0 +1 SET @@global.server_id = 1; SELECT @@global.server_id; @@global.server_id @@ -52,17 +54,23 @@ SET @@local.server_id = 4; ERROR HY000: Variable 'server_id' is a GLOBAL variable and should be set with SET GLOBAL '#------------------FN_DYNVARS_144_05-----------------------#' SET @@global.server_id = -1; +Warnings: +Warning 1292 Truncated incorrect server-id value: '0' SELECT @@global.server_id; @@global.server_id -0 +1 SET @@global.server_id = -2147483648; +Warnings: +Warning 1292 Truncated incorrect server-id value: '0' SELECT @@global.server_id; @@global.server_id -0 +1 SET @@global.server_id = 2147483649*2; +Warnings: +Warning 1292 Truncated incorrect server-id value: '4294967298' SELECT @@global.server_id; @@global.server_id -4294967298 +4294967295 SET @@global.server_id = 65530.34.; ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.' at line 1 SET @@global.server_id = '125'; @@ -91,9 +99,11 @@ SELECT @@global.server_id; @@global.server_id 1 SET @@global.server_id = FALSE; +Warnings: +Warning 1292 Truncated incorrect server-id value: '0' SELECT @@global.server_id; @@global.server_id -0 +1 '#---------------------FN_DYNVARS_001_09----------------------#' SET @@global.server_id = 512; SELECT @@server_id = @@global.server_id; === modified file 'mysql-test/t/events_bugs.test' --- a/mysql-test/t/events_bugs.test 2009-01-23 12:22:05 +0000 +++ b/mysql-test/t/events_bugs.test 2009-02-24 07:35:55 +0000 @@ -1209,6 +1209,18 @@ select replace(@full_mode, 'ALLOW_INVALI select name from mysql.event where name = 'p' and sql_mode = @full_mode; drop event e1; +# +# Bug#36540: CREATE EVENT and ALTER EVENT statements fail with large server_id +# + +SET @old_server_id = @@GLOBAL.server_id; +SET GLOBAL server_id = (1 << 32) - 1; +SELECT @@GLOBAL.server_id; +CREATE EVENT ev1 ON SCHEDULE EVERY 1 DAY DO SELECT 1; +SELECT event_name, originator FROM INFORMATION_SCHEMA.EVENTS; +DROP EVENT ev1; +SET GLOBAL server_id = @old_server_id; + ########################################################################### # # End of tests === modified file 'mysql-test/t/log_tables.test' --- a/mysql-test/t/log_tables.test 2008-11-13 19:19:00 +0000 +++ b/mysql-test/t/log_tables.test 2009-02-24 07:35:55 +0000 @@ -287,7 +287,7 @@ CREATE TABLE `general_log` ( ON UPDATE CURRENT_TIMESTAMP, `user_host` mediumtext NOT NULL, `thread_id` int(11) NOT NULL, - `server_id` int(11) NOT NULL, + `server_id` int(10) unsigned NOT NULL, `command_type` varchar(64) NOT NULL, `argument` mediumtext NOT NULL ) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='General log'; @@ -303,7 +303,7 @@ CREATE TABLE `slow_log` ( `db` varchar(512) NOT NULL, `last_insert_id` int(11) NOT NULL, `insert_id` int(11) NOT NULL, - `server_id` int(11) NOT NULL, + `server_id` int(10) unsigned NOT NULL, `sql_text` mediumtext NOT NULL ) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='Slow log'; === modified file 'mysql-test/t/variables.test' --- a/mysql-test/t/variables.test 2009-02-02 22:56:45 +0000 +++ b/mysql-test/t/variables.test 2009-02-24 07:35:55 +0000 @@ -1079,3 +1079,20 @@ SET @@session.thread_stack= 7; --error ER_INCORRECT_GLOBAL_LOCAL_VAR SET @@global.thread_stack= 7; # + +# +# Bug#36540: CREATE EVENT and ALTER EVENT statements fail with large server_id +# + +SET @old_server_id = @@GLOBAL.server_id; +SET GLOBAL server_id = (1 << 32) - 1; +SELECT @@GLOBAL.server_id; +SET GLOBAL server_id = (1 << 32); +SELECT @@GLOBAL.server_id; +SET GLOBAL server_id = (1 << 64); +SELECT @@GLOBAL.server_id; +SET GLOBAL server_id = 0; +SELECT @@GLOBAL.server_id; +SET GLOBAL server_id = -1; +SELECT @@GLOBAL.server_id; +SET GLOBAL server_id = @old_server_id; === modified file 'scripts/mysql_system_tables.sql' --- a/scripts/mysql_system_tables.sql 2008-07-31 09:50:24 +0000 +++ b/scripts/mysql_system_tables.sql 2009-02-24 07:35:55 +0000 @@ -66,7 +66,7 @@ CREATE TABLE IF NOT EXISTS procs_priv ( -- Create general_log if CSV is enabled. -SET @str = IF (@@have_csv = 'YES', 'CREATE TABLE IF NOT EXISTS general_log (event_time TIMESTAMP NOT NULL, user_host MEDIUMTEXT NOT NULL, thread_id INTEGER NOT NULL, server_id INTEGER NOT NULL, command_type VARCHAR(64) NOT NULL, argument MEDIUMTEXT NOT NULL) engine=CSV CHARACTER SET utf8 comment="General log"', 'SET @dummy = 0'); +SET @str = IF (@@have_csv = 'YES', 'CREATE TABLE IF NOT EXISTS general_log (event_time TIMESTAMP NOT NULL, user_host MEDIUMTEXT NOT NULL, thread_id INTEGER NOT NULL, server_id INTEGER UNSIGNED NOT NULL, command_type VARCHAR(64) NOT NULL, argument MEDIUMTEXT NOT NULL) engine=CSV CHARACTER SET utf8 comment="General log"', 'SET @dummy = 0'); PREPARE stmt FROM @str; EXECUTE stmt; @@ -74,13 +74,13 @@ DROP PREPARE stmt; -- Create slow_log if CSV is enabled. -SET @str = IF (@@have_csv = 'YES', 'CREATE TABLE IF NOT EXISTS slow_log (start_time TIMESTAMP NOT NULL, user_host MEDIUMTEXT NOT NULL, query_time TIME NOT NULL, lock_time TIME NOT NULL, rows_sent INTEGER NOT NULL, rows_examined INTEGER NOT NULL, db VARCHAR(512) NOT NULL, last_insert_id INTEGER NOT NULL, insert_id INTEGER NOT NULL, server_id INTEGER NOT NULL, sql_text MEDIUMTEXT NOT NULL) engine=CSV CHARACTER SET utf8 comment="Slow log"', 'SET @dummy = 0'); +SET @str = IF (@@have_csv = 'YES', 'CREATE TABLE IF NOT EXISTS slow_log (start_time TIMESTAMP NOT NULL, user_host MEDIUMTEXT NOT NULL, query_time TIME NOT NULL, lock_time TIME NOT NULL, rows_sent INTEGER NOT NULL, rows_examined INTEGER NOT NULL, db VARCHAR(512) NOT NULL, last_insert_id INTEGER NOT NULL, insert_id INTEGER NOT NULL, server_id INTEGER UNSIGNED NOT NULL, sql_text MEDIUMTEXT NOT NULL) engine=CSV CHARACTER SET utf8 comment="Slow log"', 'SET @dummy = 0'); PREPARE stmt FROM @str; EXECUTE stmt; DROP PREPARE stmt; -CREATE TABLE IF NOT EXISTS event ( db char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL default '', name char(64) CHARACTER SET utf8 NOT NULL default '', body longblob NOT NULL, definer char(77) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL default '', execute_at DATETIME default NULL, interval_value int(11) default NULL, interval_field ENUM('YEAR','QUARTER','MONTH','DAY','HOUR','MINUTE','WEEK','SECOND','MICROSECOND','YEAR_MONTH','DAY_HOUR','DAY_MINUTE','DAY_SECOND','HOUR_MINUTE','HOUR_SECOND','MINUTE_SECOND','DAY_MICROSECOND','HOUR_MICROSECOND','MINUTE_MICROSECOND','SECOND_MICROSECOND') default NULL, created TIMESTAMP NOT NULL, modified TIMESTAMP NOT NULL, last_executed DATETIME default NULL, starts DATETIME default NULL, ends DATETIME default NULL, status ENUM('ENABLED','DISABLED','SLAVESIDE_DISABLED') NOT NULL default 'ENABLED', on_completion ENUM('DROP','PRESERVE') NOT NULL default 'DROP', sql_mode set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','! NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') DEFAULT '' NOT NULL, comment char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL default '', originator int(10) NOT NULL, time_zone char(64) CHARACTER SET latin1 NOT NULL DEFAULT 'SYSTEM', character_set_client char(32) collate utf8_bin, collation_connection char(32) collate utf8_bin, db_collation char(32) collate utf8_bin, body_utf8 longblob, PRIMARY KEY (db, name) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT 'Events'; +CREATE TABLE IF NOT EXISTS event ( db char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL default '', name char(64) CHARACTER SET utf8 NOT NULL default '', body longblob NOT NULL, definer char(77) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL default '', execute_at DATETIME default NULL, interval_value int(11) default NULL, interval_field ENUM('YEAR','QUARTER','MONTH','DAY','HOUR','MINUTE','WEEK','SECOND','MICROSECOND','YEAR_MONTH','DAY_HOUR','DAY_MINUTE','DAY_SECOND','HOUR_MINUTE','HOUR_SECOND','MINUTE_SECOND','DAY_MICROSECOND','HOUR_MICROSECOND','MINUTE_MICROSECOND','SECOND_MICROSECOND') default NULL, created TIMESTAMP NOT NULL, modified TIMESTAMP NOT NULL, last_executed DATETIME default NULL, starts DATETIME default NULL, ends DATETIME default NULL, status ENUM('ENABLED','DISABLED','SLAVESIDE_DISABLED') NOT NULL default 'ENABLED', on_completion ENUM('DROP','PRESERVE') NOT NULL default 'DROP', sql_mode set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','! NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') DEFAULT '' NOT NULL, comment char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL default '', originator INTEGER UNSIGNED NOT NULL, time_zone char(64) CHARACTER SET latin1 NOT NULL DEFAULT 'SYSTEM', character_set_client char(32) collate utf8_bin, collation_connection char(32) collate utf8_bin, db_collation char(32) collate utf8_bin, body_utf8 longblob, PRIMARY KEY (db, name) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT 'Events'; CREATE TABLE IF NOT EXISTS ndb_binlog_index (Position BIGINT UNSIGNED NOT NULL, File VARCHAR(255) NOT NULL, epoch BIGINT UNSIGNED NOT NULL, inserts BIGINT UNSIGNED NOT NULL, updates BIGINT UNSIGNED NOT NULL, deletes BIGINT UNSIGNED NOT NULL, schemaops BIGINT UNSIGNED NOT NULL, PRIMARY KEY(epoch)) ENGINE=MYISAM; === modified file 'scripts/mysql_system_tables_fix.sql' --- a/scripts/mysql_system_tables_fix.sql 2008-04-04 16:46:05 +0000 +++ b/scripts/mysql_system_tables_fix.sql 2009-02-24 07:35:55 +0000 @@ -216,6 +216,20 @@ ALTER TABLE func MODIFY type enum ('function','aggregate') COLLATE utf8_general_ci NOT NULL; # +# Modify log tables. +# + +SET @old_log_state = @@global.general_log; +SET GLOBAL general_log = 'OFF'; +ALTER TABLE general_log MODIFY COLUMN server_id INTEGER UNSIGNED NOT NULL; +SET GLOBAL general_log = @old_log_state; + +SET @old_log_state = @@global.slow_query_log; +SET GLOBAL slow_query_log = 'OFF'; +ALTER TABLE slow_log MODIFY COLUMN server_id INTEGER UNSIGNED NOT NULL; +SET GLOBAL slow_query_log = @old_log_state; + +# # Detect whether we had Create_view_priv # SET @hadCreateViewPriv:=0; @@ -471,7 +485,10 @@ ALTER TABLE event MODIFY sql_mode 'PAD_CHAR_TO_FULL_LENGTH' ) DEFAULT '' NOT NULL AFTER on_completion; ALTER TABLE event MODIFY name char(64) CHARACTER SET utf8 NOT NULL default ''; -ALTER TABLE event ADD COLUMN originator INT(10) NOT NULL AFTER comment; + +ALTER TABLE event MODIFY COLUMN originator INT UNSIGNED NOT NULL; +ALTER TABLE event ADD COLUMN originator INT UNSIGNED NOT NULL AFTER comment; + ALTER TABLE event MODIFY COLUMN status ENUM('ENABLED','DISABLED','SLAVESIDE_DISABLED') NOT NULL default 'ENABLED'; ALTER TABLE event ADD COLUMN time_zone char(64) CHARACTER SET latin1 === modified file 'sql/mysqld.cc' --- a/sql/mysqld.cc 2009-02-23 12:42:31 +0000 +++ b/sql/mysqld.cc 2009-02-24 07:35:55 +0000 @@ -6246,7 +6246,7 @@ Can't be set to 1 if --log-slave-updates GET_STR_ALLOC, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, {"server-id", OPT_SERVER_ID, "Uniquely identifies the server instance in the community of replication partners.", - (uchar**) &server_id, (uchar**) &server_id, 0, GET_ULONG, REQUIRED_ARG, 0, 0, 0, + (uchar**) &server_id, (uchar**) &server_id, 0, GET_ULONG, REQUIRED_ARG, 1, 1, UINT_MAX32, 0, 0, 0}, {"set-variable", 'O', "Change the value of a variable. Please note that this option is deprecated;you can set variables directly with --variable-name=value.", --===============4299015672258898679== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/davi.arnaut@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: davi.arnaut@stripped # target_branch: file:///data0/my/darnaut/mysql-repo/work/36540-5.1/ # testament_sha1: d017187f9e6cd43367976b35f16673a8213a112b # timestamp: 2009-02-24 08:40:31 +0100 # base_revision_id: alexey.kopytov@stripped\ # hza7ke4ueijjgxie # # Begin bundle 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 --===============4299015672258898679==--