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@stripped, 2007-04-18 16:23:19+02:00, msvensson@stripped +4 -0
Update mysql_upgrade tests for 5.1
Add "two liner" to mysqld --bootstrap that allows
wo write scripts that can be run both by mysql and mysqld --bootstrap
Remove duplicate create of MySQL system tables
mysql-test/r/mysql_upgrade.result@stripped, 2007-04-18 16:23:17+02:00,
msvensson@stripped +18 -0
Update mysql_upgrade.result for new tables in 5.1
scripts/mysql_system_tables.sql@stripped, 2007-04-18 16:23:17+02:00, msvensson@stripped
+8 -8
Use "delimiter ;;" to make it possible to run the script
both with "mysql" and "mysqld --bootstrap"
scripts/mysql_system_tables_fix.sql@stripped, 2007-04-18 16:23:17+02:00,
msvensson@stripped +0 -39
Remove duplicate stored procedure for creating slow_log
and general_log.
Remove duplicate CREATE of ndb_binlog_index.
Those are already defined in mysql_system_tables.sql
sql/sql_parse.cc@stripped, 2007-04-18 16:23:17+02:00, msvensson@stripped +5 -0
Make "mysqld --bootstrap skip lines startig with "delimiter"
thus making it possible to write sql scripts containing
stored procedures that can be executed both with "mysql" and
"mysqld --bootstrap"
# 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: pilot.blaudden
# Root: /home/msvensson/mysql/mysql-5.1-maint
--- 1.652/sql/sql_parse.cc 2007-04-07 11:59:49 +02:00
+++ 1.653/sql/sql_parse.cc 2007-04-18 16:23:17 +02:00
@@ -364,6 +364,11 @@ pthread_handler_t handle_bootstrap(void
buff[length-1] == ';'))
length--;
buff[length]=0;
+
+ /* Skip lines starting with delimiter */
+ if (strncmp(buff, STRING_WITH_LEN("delimiter")) == 0)
+ continue;
+
thd->query_length=length;
thd->query= thd->memdup_w_gap(buff, length+1,
thd->db_length+1+QUERY_CACHE_FLAGS_SIZE);
--- 1.63/scripts/mysql_system_tables_fix.sql 2007-03-29 22:42:57 +02:00
+++ 1.64/scripts/mysql_system_tables_fix.sql 2007-04-18 16:23:17 +02:00
@@ -389,43 +389,6 @@ ALTER TABLE proc MODIFY db
char(64) collate utf8_bin DEFAULT '' NOT NULL;
#
-# Create missing log tables (5.1)
-#
-
-delimiter //
-CREATE PROCEDURE create_log_tables()
-BEGIN
- DECLARE is_csv_enabled int DEFAULT 0;
- SELECT @@have_csv = 'YES' INTO is_csv_enabled;
- IF (is_csv_enabled) THEN
- CREATE TABLE IF NOT EXISTS general_log (
- event_time TIMESTAMP NOT NULL,
- user_host MEDIUMTEXT,
- thread_id INTEGER,
- server_id INTEGER,
- command_type VARCHAR(64),
- argument MEDIUMTEXT
- ) engine=CSV CHARACTER SET utf8 comment='General log';
- 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),
- last_insert_id INTEGER,
- insert_id INTEGER,
- server_id INTEGER,
- sql_text MEDIUMTEXT NOT NULL
- ) engine=CSV CHARACTER SET utf8 comment='Slow log';
- END IF;
-END//
-delimiter ;
-CALL create_log_tables();
-DROP PROCEDURE create_log_tables;
-
-#
# EVENT privilege
#
SET @hadEventPriv := 0;
@@ -502,8 +465,6 @@ ALTER TABLE db MODIFY Trigger_priv enum(
ALTER TABLE tables_priv MODIFY Table_priv
set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter','Create
View','Show view','Trigger') COLLATE utf8_general_ci DEFAULT '' NOT NULL;
UPDATE user SET Trigger_priv=Super_priv WHERE @hadTriggerPriv = 0;
-
-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;
# Activate the new, possible modified privilege tables
# This should not be needed, but gives us some extra testing that the above
--- 1.8/mysql-test/r/mysql_upgrade.result 2007-04-18 14:17:57 +02:00
+++ 1.9/mysql-test/r/mysql_upgrade.result 2007-04-18 16:23:17 +02:00
@@ -1,14 +1,20 @@
Run mysql_upgrade once
mysql.columns_priv OK
mysql.db OK
+mysql.event OK
mysql.func OK
+mysql.general_log OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
+mysql.ndb_binlog_index OK
+mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
+mysql.servers OK
+mysql.slow_log OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
@@ -21,14 +27,20 @@ This installation of MySQL is already up
Force should run it regardless of wether it's been run before
mysql.columns_priv OK
mysql.db OK
+mysql.event OK
mysql.func OK
+mysql.general_log OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
+mysql.ndb_binlog_index OK
+mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
+mysql.servers OK
+mysql.slow_log OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
@@ -41,14 +53,20 @@ GRANT ALL ON *.* TO mysqltest1@'%';
Run mysql_upgrade with password protected account
mysql.columns_priv OK
mysql.db OK
+mysql.event OK
mysql.func OK
+mysql.general_log OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
+mysql.ndb_binlog_index OK
+mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
+mysql.servers OK
+mysql.slow_log OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
--- 1.8/scripts/mysql_system_tables.sql 2007-04-13 15:13:11 +02:00
+++ 1.9/scripts/mysql_system_tables.sql 2007-04-18 16:23:17 +02:00
@@ -65,15 +65,15 @@ CREATE TABLE IF NOT EXISTS proc ( db cha
CREATE TABLE IF NOT EXISTS procs_priv ( Host char(60) binary DEFAULT '' NOT NULL, Db
char(64) binary DEFAULT '' NOT NULL, User char(16) binary DEFAULT '' NOT NULL,
Routine_name char(64) binary DEFAULT '' NOT NULL, Routine_type
enum('FUNCTION','PROCEDURE') NOT NULL, Grantor char(77) DEFAULT '' NOT NULL, Proc_priv
set('Execute','Alter Routine','Grant') COLLATE utf8_general_ci DEFAULT '' NOT NULL,
Timestamp timestamp(14), PRIMARY KEY (Host,Db,User,Routine_name,Routine_type), KEY
Grantor (Grantor) ) engine=MyISAM CHARACTER SET utf8 COLLATE utf8_bin
comment='Procedure privileges';
-CREATE PROCEDURE create_general_log_table() BEGIN DECLARE is_csv_enabled int DEFAULT 0;
SELECT @@have_csv = 'YES' INTO is_csv_enabled; IF (is_csv_enabled) THEN CREATE TABLE IF
NOT EXISTS general_log (event_time TIMESTAMP NOT NULL, user_host MEDIUMTEXT, thread_id
INTEGER, server_id INTEGER, command_type VARCHAR(64), argument MEDIUMTEXT) engine=CSV
CHARACTER SET utf8 comment='General log'; END IF; END;
-CALL create_general_log_table();
-DROP PROCEDURE create_general_log_table;
-
-
-CREATE PROCEDURE create_slow_log_table() BEGIN DECLARE is_csv_enabled int DEFAULT 0;
SELECT @@have_csv = 'YES' INTO is_csv_enabled; IF (is_csv_enabled) THEN 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), last_insert_id INTEGER, insert_id
INTEGER, server_id INTEGER, sql_text MEDIUMTEXT NOT NULL) engine=CSV CHARACTER SET utf8
comment='Slow log'; END IF; END;
-CALL create_slow_log_table();
-DROP PROCEDURE create_slow_log_table;
+delimiter ;;
+CREATE PROCEDURE create_general_log_table() BEGIN DECLARE is_csv_enabled int DEFAULT 0;
SELECT @@have_csv = 'YES' INTO is_csv_enabled; IF (is_csv_enabled) THEN CREATE TABLE IF
NOT EXISTS general_log (event_time TIMESTAMP NOT NULL, user_host MEDIUMTEXT, thread_id
INTEGER, server_id INTEGER, command_type VARCHAR(64), argument MEDIUMTEXT) engine=CSV
CHARACTER SET utf8 comment='General log'; END IF; END;;
+CALL create_general_log_table();;
+DROP PROCEDURE create_general_log_table;;
+CREATE PROCEDURE create_slow_log_table() BEGIN DECLARE is_csv_enabled int DEFAULT 0;
SELECT @@have_csv = 'YES' INTO is_csv_enabled; IF (is_csv_enabled) THEN 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), last_insert_id INTEGER, insert_id
INTEGER, server_id INTEGER, sql_text MEDIUMTEXT NOT NULL) engine=CSV CHARACTER SET utf8
comment='Slow log'; END IF; END;;
+CALL create_slow_log_table();;
+DROP PROCEDURE create_slow_log_table;;
+delimiter ;
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')
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', PRIMARY KEY (db, name) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT 'Events';
| Thread |
|---|
| • bk commit into 5.1 tree (msvensson:1.2586) | msvensson | 18 Apr |