From: Davi Arnaut Date: February 25 2009 8:24am Subject: bzr commit into mysql-5.1-bugteam branch (Davi.Arnaut:2818) Bug#36540 List-Archive: http://lists.mysql.com/commits/67443 X-Bug: 36540 Message-Id: <200902250825.n1P8P2Yw013822@rhel5-ia64-a.mysql.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============6303457311460214518==" --===============6303457311460214518== 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:aelkin@stripped 2818 Davi Arnaut 2009-02-25 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. @ 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/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 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/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-25 08:21:42 +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-25 08:21:42 +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-25 08:21:42 +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-25 08:21:42 +0000 @@ -1341,3 +1341,27 @@ 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); +SELECT @@GLOBAL.server_id; +@@GLOBAL.server_id +0 +SET GLOBAL server_id = 0; +SELECT @@GLOBAL.server_id; +@@GLOBAL.server_id +0 +SET GLOBAL server_id = -1; +SELECT @@GLOBAL.server_id; +@@GLOBAL.server_id +0 +SET GLOBAL server_id = @old_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-25 08:21:42 +0000 @@ -60,9 +60,11 @@ SELECT @@global.server_id; @@global.server_id 0 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'; === 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-25 08:21:42 +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-25 08:21:42 +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-25 08:21:42 +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-25 08:21:42 +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-25 08:21:42 +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-24 11:29:49 +0000 +++ b/sql/mysqld.cc 2009-02-25 08:21:42 +0000 @@ -6248,7 +6248,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, 0, 0, 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.", --===============6303457311460214518== 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: 56b579f4733aaba411303ce8ed659cea4d3542cd # timestamp: 2009-02-25 09:25:02 +0100 # base_revision_id: aelkin@stripped # # Begin bundle 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 2TrDg6j/4u5IpwoSH/8QjwA= --===============6303457311460214518==--