1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-4.1-runtime

into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/41
This commit is contained in:
unknown
2007-03-07 07:02:00 +01:00
26 changed files with 802 additions and 650 deletions

View File

@ -35,7 +35,7 @@ testdir = $(benchdir_root)/mysql-test
EXTRA_SCRIPTS = mysql-test-run-shell.sh install_test_db.sh \
valgrind.supp $(PRESCRIPTS)
EXTRA_DIST = $(EXTRA_SCRIPTS)
GENSCRIPTS = mysql-test-run-shell mysql-test-run install_test_db mtr
GENSCRIPTS = mysql-test-run-shell mysql-test-run install_test_db mtr lib/init_db.sql
PRESCRIPTS = mysql-test-run.pl
test_SCRIPTS = $(GENSCRIPTS) $(PRESCRIPTS)
test_DATA = std_data/client-key.pem \
@ -119,6 +119,11 @@ mysql-test-run:
$(RM) -f mysql-test-run
$(LN_S) mysql-test-run.pl mysql-test-run
# Build init_db.sql by executing mysql_create_system_tables
lib/init_db.sql:
$(top_builddir)/scripts/mysql_create_system_tables \
test . \@HOSTNAME\@ > lib/init_db.sql
SUFFIXES = .sh
.sh:

File diff suppressed because one or more lines are too long

View File

@ -1,471 +0,0 @@
use mysql;
set table_type=myisam;
CREATE TABLE db (
Host char(60) binary DEFAULT '' NOT NULL,
Db char(64) binary DEFAULT '' NOT NULL,
User char(16) binary DEFAULT '' NOT NULL,
Select_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Insert_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Update_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Delete_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Create_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Drop_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Grant_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
References_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Index_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Alter_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Create_tmp_table_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Lock_tables_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
PRIMARY KEY Host (Host,Db,User),
KEY User (User)
) engine=MyISAM
CHARACTER SET utf8 COLLATE utf8_bin
comment='Database privileges';
INSERT INTO db VALUES ('%','test' ,'','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y');
INSERT INTO db VALUES ('%','test\_%','','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y');
CREATE TABLE host (
Host char(60) binary DEFAULT '' NOT NULL,
Db char(64) binary DEFAULT '' NOT NULL,
Select_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Insert_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Update_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Delete_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Create_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Drop_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Grant_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
References_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Index_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Alter_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Create_tmp_table_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Lock_tables_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
PRIMARY KEY Host (Host,Db)
) engine=MyISAM
CHARACTER SET utf8 COLLATE utf8_bin
comment='Host privileges; Merged with database privileges';
CREATE TABLE user (
Host char(60) binary DEFAULT '' NOT NULL,
User char(16) binary DEFAULT '' NOT NULL,
Password char(41) binary DEFAULT '' NOT NULL,
Select_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Insert_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Update_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Delete_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Create_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Drop_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Reload_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Shutdown_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Process_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
File_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Grant_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
References_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Index_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Alter_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Show_db_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Super_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Create_tmp_table_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Lock_tables_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Execute_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Repl_slave_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
Repl_client_priv enum('N','Y') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
ssl_type enum('','ANY','X509', 'SPECIFIED') COLLATE utf8_general_ci DEFAULT '' NOT NULL,
ssl_cipher BLOB NOT NULL,
x509_issuer BLOB NOT NULL,
x509_subject BLOB NOT NULL,
max_questions int(11) unsigned DEFAULT 0 NOT NULL,
max_updates int(11) unsigned DEFAULT 0 NOT NULL,
max_connections int(11) unsigned DEFAULT 0 NOT NULL,
PRIMARY KEY Host (Host,User)
) engine=MyISAM
CHARACTER SET utf8 COLLATE utf8_bin
comment='Users and global privileges';
INSERT INTO user VALUES ('localhost' ,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0);
INSERT INTO user VALUES ('@HOSTNAME@%','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0);
REPLACE INTO user VALUES ('127.0.0.1' ,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0);
INSERT INTO user (host,user) VALUES ('localhost','');
INSERT INTO user (host,user) VALUES ('@HOSTNAME@%','');
CREATE TABLE func (
name char(64) binary DEFAULT '' NOT NULL,
ret tinyint(1) DEFAULT '0' NOT NULL,
dl char(128) DEFAULT '' NOT NULL,
type enum ('function','aggregate') COLLATE utf8_general_ci NOT NULL,
PRIMARY KEY (name)
) engine=MyISAM
CHARACTER SET utf8 COLLATE utf8_bin
comment='User defined functions';
CREATE TABLE tables_priv (
Host char(60) binary DEFAULT '' NOT NULL,
Db char(64) binary DEFAULT '' NOT NULL,
User char(16) binary DEFAULT '' NOT NULL,
Table_name char(64) binary DEFAULT '' NOT NULL,
Grantor char(77) DEFAULT '' NOT NULL,
Timestamp timestamp(14),
Table_priv set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter') COLLATE utf8_general_ci DEFAULT '' NOT NULL,
Column_priv set('Select','Insert','Update','References') COLLATE utf8_general_ci DEFAULT '' NOT NULL,
PRIMARY KEY (Host,Db,User,Table_name),KEY Grantor (Grantor)
) engine=MyISAM
CHARACTER SET utf8 COLLATE utf8_bin
comment='Table privileges';
CREATE TABLE columns_priv (
Host char(60) binary DEFAULT '' NOT NULL,
Db char(64) binary DEFAULT '' NOT NULL,
User char(16) binary DEFAULT '' NOT NULL,
Table_name char(64) binary DEFAULT '' NOT NULL,
Column_name char(64) binary DEFAULT '' NOT NULL,
Timestamp timestamp(14),
Column_priv set('Select','Insert','Update','References') COLLATE utf8_general_ci DEFAULT '' NOT NULL,
PRIMARY KEY (Host,Db,User,Table_name,Column_name)
) engine=MyISAM
CHARACTER SET utf8 COLLATE utf8_bin
comment='Column privileges';
CREATE TABLE help_topic (
help_topic_id int unsigned not null,
name varchar(64) not null,
help_category_id smallint unsigned not null,
description text not null,
example text not null,
url varchar(128) not null,
primary key (help_topic_id),
unique index (name)
) engine=MyISAM
CHARACTER SET utf8
comment='help topics';
CREATE TABLE help_category (
help_category_id smallint unsigned not null,
name varchar(64) not null,
parent_category_id smallint unsigned null,
url varchar(128) not null,
primary key (help_category_id),unique index (name)
) engine=MyISAM
CHARACTER SET utf8
comment='help categories';
CREATE TABLE help_keyword (
help_keyword_id int unsigned not null,
name varchar(64) not null,
primary key (help_keyword_id),unique index (name)
) engine=MyISAM
CHARACTER SET utf8
comment='help keywords';
CREATE TABLE help_relation (
help_topic_id int unsigned not null references help_topic,
help_keyword_id int unsigned not null references help_keyword,
primary key (help_keyword_id, help_topic_id)
) engine=MyISAM
CHARACTER SET utf8
comment='keyword-topic relation';
CREATE TABLE time_zone_name (
Name char(64) NOT NULL,
Time_zone_id int unsigned NOT NULL,
PRIMARY KEY Name (Name)
) engine=MyISAM
CHARACTER SET utf8
comment='Time zone names';
INSERT INTO time_zone_name (Name, Time_Zone_id) VALUES
('MET', 1), ('UTC', 2), ('Universal', 2),
('Europe/Moscow',3), ('leap/Europe/Moscow',4),
('Japan', 5);
CREATE TABLE time_zone (
Time_zone_id int unsigned NOT NULL auto_increment,
Use_leap_seconds enum('Y','N') COLLATE utf8_general_ci DEFAULT 'N' NOT NULL,
PRIMARY KEY TzId (Time_zone_id)
) engine=MyISAM
CHARACTER SET utf8
comment='Time zones';
INSERT INTO time_zone (Time_zone_id, Use_leap_seconds)
VALUES (1,'N'), (2,'N'), (3,'N'), (4,'Y'), (5,'N');
CREATE TABLE time_zone_transition (
Time_zone_id int unsigned NOT NULL,
Transition_time bigint signed NOT NULL,
Transition_type_id int unsigned NOT NULL,
PRIMARY KEY TzIdTranTime (Time_zone_id, Transition_time)
) engine=MyISAM
CHARACTER SET utf8
comment='Time zone transitions';
INSERT INTO time_zone_transition
(Time_zone_id, Transition_time, Transition_type_id)
VALUES
(1, -1693706400, 0) ,(1, -1680483600, 1)
,(1, -1663455600, 2) ,(1, -1650150000, 3)
,(1, -1632006000, 2) ,(1, -1618700400, 3)
,(1, -938905200, 2) ,(1, -857257200, 3)
,(1, -844556400, 2) ,(1, -828226800, 3)
,(1, -812502000, 2) ,(1, -796777200, 3)
,(1, 228877200, 2) ,(1, 243997200, 3)
,(1, 260326800, 2) ,(1, 276051600, 3)
,(1, 291776400, 2) ,(1, 307501200, 3)
,(1, 323830800, 2) ,(1, 338950800, 3)
,(1, 354675600, 2) ,(1, 370400400, 3)
,(1, 386125200, 2) ,(1, 401850000, 3)
,(1, 417574800, 2) ,(1, 433299600, 3)
,(1, 449024400, 2) ,(1, 465354000, 3)
,(1, 481078800, 2) ,(1, 496803600, 3)
,(1, 512528400, 2) ,(1, 528253200, 3)
,(1, 543978000, 2) ,(1, 559702800, 3)
,(1, 575427600, 2) ,(1, 591152400, 3)
,(1, 606877200, 2) ,(1, 622602000, 3)
,(1, 638326800, 2) ,(1, 654656400, 3)
,(1, 670381200, 2) ,(1, 686106000, 3)
,(1, 701830800, 2) ,(1, 717555600, 3)
,(1, 733280400, 2) ,(1, 749005200, 3)
,(1, 764730000, 2) ,(1, 780454800, 3)
,(1, 796179600, 2) ,(1, 811904400, 3)
,(1, 828234000, 2) ,(1, 846378000, 3)
,(1, 859683600, 2) ,(1, 877827600, 3)
,(1, 891133200, 2) ,(1, 909277200, 3)
,(1, 922582800, 2) ,(1, 941331600, 3)
,(1, 954032400, 2) ,(1, 972781200, 3)
,(1, 985482000, 2) ,(1, 1004230800, 3)
,(1, 1017536400, 2) ,(1, 1035680400, 3)
,(1, 1048986000, 2) ,(1, 1067130000, 3)
,(1, 1080435600, 2) ,(1, 1099184400, 3)
,(1, 1111885200, 2) ,(1, 1130634000, 3)
,(1, 1143334800, 2) ,(1, 1162083600, 3)
,(1, 1174784400, 2) ,(1, 1193533200, 3)
,(1, 1206838800, 2) ,(1, 1224982800, 3)
,(1, 1238288400, 2) ,(1, 1256432400, 3)
,(1, 1269738000, 2) ,(1, 1288486800, 3)
,(1, 1301187600, 2) ,(1, 1319936400, 3)
,(1, 1332637200, 2) ,(1, 1351386000, 3)
,(1, 1364691600, 2) ,(1, 1382835600, 3)
,(1, 1396141200, 2) ,(1, 1414285200, 3)
,(1, 1427590800, 2) ,(1, 1445734800, 3)
,(1, 1459040400, 2) ,(1, 1477789200, 3)
,(1, 1490490000, 2) ,(1, 1509238800, 3)
,(1, 1521939600, 2) ,(1, 1540688400, 3)
,(1, 1553994000, 2) ,(1, 1572138000, 3)
,(1, 1585443600, 2) ,(1, 1603587600, 3)
,(1, 1616893200, 2) ,(1, 1635642000, 3)
,(1, 1648342800, 2) ,(1, 1667091600, 3)
,(1, 1679792400, 2) ,(1, 1698541200, 3)
,(1, 1711846800, 2) ,(1, 1729990800, 3)
,(1, 1743296400, 2) ,(1, 1761440400, 3)
,(1, 1774746000, 2) ,(1, 1792890000, 3)
,(1, 1806195600, 2) ,(1, 1824944400, 3)
,(1, 1837645200, 2) ,(1, 1856394000, 3)
,(1, 1869094800, 2) ,(1, 1887843600, 3)
,(1, 1901149200, 2) ,(1, 1919293200, 3)
,(1, 1932598800, 2) ,(1, 1950742800, 3)
,(1, 1964048400, 2) ,(1, 1982797200, 3)
,(1, 1995498000, 2) ,(1, 2014246800, 3)
,(1, 2026947600, 2) ,(1, 2045696400, 3)
,(1, 2058397200, 2) ,(1, 2077146000, 3)
,(1, 2090451600, 2) ,(1, 2108595600, 3)
,(1, 2121901200, 2) ,(1, 2140045200, 3)
,(3, -1688265000, 2) ,(3, -1656819048, 1)
,(3, -1641353448, 2) ,(3, -1627965048, 3)
,(3, -1618716648, 1) ,(3, -1596429048, 3)
,(3, -1593829848, 5) ,(3, -1589860800, 4)
,(3, -1542427200, 5) ,(3, -1539493200, 6)
,(3, -1525323600, 5) ,(3, -1522728000, 4)
,(3, -1491188400, 7) ,(3, -1247536800, 4)
,(3, 354920400, 5) ,(3, 370728000, 4)
,(3, 386456400, 5) ,(3, 402264000, 4)
,(3, 417992400, 5) ,(3, 433800000, 4)
,(3, 449614800, 5) ,(3, 465346800, 8)
,(3, 481071600, 9) ,(3, 496796400, 8)
,(3, 512521200, 9) ,(3, 528246000, 8)
,(3, 543970800, 9) ,(3, 559695600, 8)
,(3, 575420400, 9) ,(3, 591145200, 8)
,(3, 606870000, 9) ,(3, 622594800, 8)
,(3, 638319600, 9) ,(3, 654649200, 8)
,(3, 670374000, 10) ,(3, 686102400, 11)
,(3, 695779200, 8) ,(3, 701812800, 5)
,(3, 717534000, 4) ,(3, 733273200, 9)
,(3, 748998000, 8) ,(3, 764722800, 9)
,(3, 780447600, 8) ,(3, 796172400, 9)
,(3, 811897200, 8) ,(3, 828226800, 9)
,(3, 846370800, 8) ,(3, 859676400, 9)
,(3, 877820400, 8) ,(3, 891126000, 9)
,(3, 909270000, 8) ,(3, 922575600, 9)
,(3, 941324400, 8) ,(3, 954025200, 9)
,(3, 972774000, 8) ,(3, 985474800, 9)
,(3, 1004223600, 8) ,(3, 1017529200, 9)
,(3, 1035673200, 8) ,(3, 1048978800, 9)
,(3, 1067122800, 8) ,(3, 1080428400, 9)
,(3, 1099177200, 8) ,(3, 1111878000, 9)
,(3, 1130626800, 8) ,(3, 1143327600, 9)
,(3, 1162076400, 8) ,(3, 1174777200, 9)
,(3, 1193526000, 8) ,(3, 1206831600, 9)
,(3, 1224975600, 8) ,(3, 1238281200, 9)
,(3, 1256425200, 8) ,(3, 1269730800, 9)
,(3, 1288479600, 8) ,(3, 1301180400, 9)
,(3, 1319929200, 8) ,(3, 1332630000, 9)
,(3, 1351378800, 8) ,(3, 1364684400, 9)
,(3, 1382828400, 8) ,(3, 1396134000, 9)
,(3, 1414278000, 8) ,(3, 1427583600, 9)
,(3, 1445727600, 8) ,(3, 1459033200, 9)
,(3, 1477782000, 8) ,(3, 1490482800, 9)
,(3, 1509231600, 8) ,(3, 1521932400, 9)
,(3, 1540681200, 8) ,(3, 1553986800, 9)
,(3, 1572130800, 8) ,(3, 1585436400, 9)
,(3, 1603580400, 8) ,(3, 1616886000, 9)
,(3, 1635634800, 8) ,(3, 1648335600, 9)
,(3, 1667084400, 8) ,(3, 1679785200, 9)
,(3, 1698534000, 8) ,(3, 1711839600, 9)
,(3, 1729983600, 8) ,(3, 1743289200, 9)
,(3, 1761433200, 8) ,(3, 1774738800, 9)
,(3, 1792882800, 8) ,(3, 1806188400, 9)
,(3, 1824937200, 8) ,(3, 1837638000, 9)
,(3, 1856386800, 8) ,(3, 1869087600, 9)
,(3, 1887836400, 8) ,(3, 1901142000, 9)
,(3, 1919286000, 8) ,(3, 1932591600, 9)
,(3, 1950735600, 8) ,(3, 1964041200, 9)
,(3, 1982790000, 8) ,(3, 1995490800, 9)
,(3, 2014239600, 8) ,(3, 2026940400, 9)
,(3, 2045689200, 8) ,(3, 2058390000, 9)
,(3, 2077138800, 8) ,(3, 2090444400, 9)
,(3, 2108588400, 8) ,(3, 2121894000, 9)
,(3, 2140038000, 8)
,(4, -1688265000, 2) ,(4, -1656819048, 1)
,(4, -1641353448, 2) ,(4, -1627965048, 3)
,(4, -1618716648, 1) ,(4, -1596429048, 3)
,(4, -1593829848, 5) ,(4, -1589860800, 4)
,(4, -1542427200, 5) ,(4, -1539493200, 6)
,(4, -1525323600, 5) ,(4, -1522728000, 4)
,(4, -1491188400, 7) ,(4, -1247536800, 4)
,(4, 354920409, 5) ,(4, 370728010, 4)
,(4, 386456410, 5) ,(4, 402264011, 4)
,(4, 417992411, 5) ,(4, 433800012, 4)
,(4, 449614812, 5) ,(4, 465346812, 8)
,(4, 481071612, 9) ,(4, 496796413, 8)
,(4, 512521213, 9) ,(4, 528246013, 8)
,(4, 543970813, 9) ,(4, 559695613, 8)
,(4, 575420414, 9) ,(4, 591145214, 8)
,(4, 606870014, 9) ,(4, 622594814, 8)
,(4, 638319615, 9) ,(4, 654649215, 8)
,(4, 670374016, 10) ,(4, 686102416, 11)
,(4, 695779216, 8) ,(4, 701812816, 5)
,(4, 717534017, 4) ,(4, 733273217, 9)
,(4, 748998018, 8) ,(4, 764722818, 9)
,(4, 780447619, 8) ,(4, 796172419, 9)
,(4, 811897219, 8) ,(4, 828226820, 9)
,(4, 846370820, 8) ,(4, 859676420, 9)
,(4, 877820421, 8) ,(4, 891126021, 9)
,(4, 909270021, 8) ,(4, 922575622, 9)
,(4, 941324422, 8) ,(4, 954025222, 9)
,(4, 972774022, 8) ,(4, 985474822, 9)
,(4, 1004223622, 8) ,(4, 1017529222, 9)
,(4, 1035673222, 8) ,(4, 1048978822, 9)
,(4, 1067122822, 8) ,(4, 1080428422, 9)
,(4, 1099177222, 8) ,(4, 1111878022, 9)
,(4, 1130626822, 8) ,(4, 1143327622, 9)
,(4, 1162076422, 8) ,(4, 1174777222, 9)
,(4, 1193526022, 8) ,(4, 1206831622, 9)
,(4, 1224975622, 8) ,(4, 1238281222, 9)
,(4, 1256425222, 8) ,(4, 1269730822, 9)
,(4, 1288479622, 8) ,(4, 1301180422, 9)
,(4, 1319929222, 8) ,(4, 1332630022, 9)
,(4, 1351378822, 8) ,(4, 1364684422, 9)
,(4, 1382828422, 8) ,(4, 1396134022, 9)
,(4, 1414278022, 8) ,(4, 1427583622, 9)
,(4, 1445727622, 8) ,(4, 1459033222, 9)
,(4, 1477782022, 8) ,(4, 1490482822, 9)
,(4, 1509231622, 8) ,(4, 1521932422, 9)
,(4, 1540681222, 8) ,(4, 1553986822, 9)
,(4, 1572130822, 8) ,(4, 1585436422, 9)
,(4, 1603580422, 8) ,(4, 1616886022, 9)
,(4, 1635634822, 8) ,(4, 1648335622, 9)
,(4, 1667084422, 8) ,(4, 1679785222, 9)
,(4, 1698534022, 8) ,(4, 1711839622, 9)
,(4, 1729983622, 8) ,(4, 1743289222, 9)
,(4, 1761433222, 8) ,(4, 1774738822, 9)
,(4, 1792882822, 8) ,(4, 1806188422, 9)
,(4, 1824937222, 8) ,(4, 1837638022, 9)
,(4, 1856386822, 8) ,(4, 1869087622, 9)
,(4, 1887836422, 8) ,(4, 1901142022, 9)
,(4, 1919286022, 8) ,(4, 1932591622, 9)
,(4, 1950735622, 8) ,(4, 1964041222, 9)
,(4, 1982790022, 8) ,(4, 1995490822, 9)
,(4, 2014239622, 8) ,(4, 2026940422, 9)
,(4, 2045689222, 8) ,(4, 2058390022, 9)
,(4, 2077138822, 8) ,(4, 2090444422, 9)
,(4, 2108588422, 8) ,(4, 2121894022, 9)
,(4, 2140038022, 8)
,(5, -1009875600, 1);
CREATE TABLE time_zone_transition_type (
Time_zone_id int unsigned NOT NULL,
Transition_type_id int unsigned NOT NULL,
Offset int signed DEFAULT 0 NOT NULL,
Is_DST tinyint unsigned DEFAULT 0 NOT NULL,
Abbreviation char(8) DEFAULT '' NOT NULL,
PRIMARY KEY TzIdTrTId (Time_zone_id, Transition_type_id)
) engine=MyISAM
CHARACTER SET utf8
comment='Time zone transition types';
INSERT INTO time_zone_transition_type (
Time_zone_id,Transition_type_id, Offset, Is_DST, Abbreviation) VALUES
(1, 0, 7200, 1, 'MEST') ,(1, 1, 3600, 0, 'MET')
,(1, 2, 7200, 1, 'MEST') ,(1, 3, 3600, 0, 'MET')
,(2, 0, 0, 0, 'UTC')
,(3, 0, 9000, 0, 'MMT') ,(3, 1, 12648, 1, 'MST')
,(3, 2, 9048, 0, 'MMT') ,(3, 3, 16248, 1, 'MDST')
,(3, 4, 10800, 0, 'MSK') ,(3, 5, 14400, 1, 'MSD')
,(3, 6, 18000, 1, 'MSD') ,(3, 7, 7200, 0, 'EET')
,(3, 8, 10800, 0, 'MSK') ,(3, 9, 14400, 1, 'MSD')
,(3, 10, 10800, 1, 'EEST') ,(3, 11, 7200, 0, 'EET')
,(4, 0, 9000, 0, 'MMT') ,(4, 1, 12648, 1, 'MST')
,(4, 2, 9048, 0, 'MMT') ,(4, 3, 16248, 1, 'MDST')
,(4, 4, 10800, 0, 'MSK') ,(4, 5, 14400, 1, 'MSD')
,(4, 6, 18000, 1, 'MSD') ,(4, 7, 7200, 0, 'EET')
,(4, 8, 10800, 0, 'MSK') ,(4, 9, 14400, 1, 'MSD')
,(4, 10, 10800, 1, 'EEST') ,(4, 11, 7200, 0, 'EET')
,(5, 0, 32400, 0, 'CJT') ,(5, 1, 32400, 0, 'JST');
CREATE TABLE time_zone_leap_second (
Transition_time bigint signed NOT NULL,
Correction int signed NOT NULL,
PRIMARY KEY TranTime (Transition_time)
) engine=MyISAM
CHARACTER SET utf8
comment='Leap seconds information for time zones';
INSERT INTO time_zone_leap_second (
Transition_time, Correction) VALUES
(78796800, 1) ,(94694401, 2) ,(126230402, 3)
,(157766403, 4) ,(189302404, 5) ,(220924805, 6)
,(252460806, 7) ,(283996807, 8) ,(315532808, 9)
,(362793609, 10) ,(394329610, 11) ,(425865611, 12)
,(489024012, 13) ,(567993613, 14) ,(631152014, 15)
,(662688015, 16) ,(709948816, 17) ,(741484817, 18)
,(773020818, 19) ,(820454419, 20) ,(867715220, 21)
,(915148821, 22);

View File

@ -8,6 +8,7 @@ use strict;
sub mtr_full_hostname ();
sub mtr_short_hostname ();
sub mtr_native_path($);
sub mtr_init_args ($);
sub mtr_add_arg ($$@);
sub mtr_path_exists(@);
@ -49,6 +50,22 @@ sub mtr_short_hostname () {
return $hostname;
}
# Convert path to OS native format
sub mtr_native_path($)
{
my $path= shift;
# MySQL version before 5.0 still use cygwin, no need
# to convert path
return $path
if ($::mysql_version_id < 50000);
$path=~ s/\//\\/g
if ($::glob_win32);
return $path;
}
# FIXME move to own lib
sub mtr_init_args ($) {

View File

@ -8,7 +8,7 @@ use Socket;
use Errno;
use strict;
use POSIX 'WNOHANG';
use POSIX qw(WNOHANG SIGHUP);
sub mtr_run ($$$$$$;$);
sub mtr_spawn ($$$$$$;$);
@ -125,19 +125,18 @@ sub spawn_impl ($$$$$$$$) {
{
if ( $! == $!{EAGAIN} ) # See "perldoc Errno"
{
mtr_debug("Got EAGAIN from fork(), sleep 1 second and redo");
mtr_warning("Got EAGAIN from fork(), sleep 1 second and redo");
sleep(1);
redo FORK;
}
else
{
mtr_error("$path ($pid) can't be forked");
}
mtr_error("$path ($pid) can't be forked, error: $!");
}
if ( $pid )
{
spawn_parent_impl($pid,$mode,$path);
return spawn_parent_impl($pid,$mode,$path);
}
else
{
@ -202,8 +201,11 @@ sub spawn_impl ($$$$$$$$) {
{
mtr_child_error("failed to execute \"$path\": $!");
}
mtr_error("Should never come here 1!");
}
mtr_error("Should never come here 2!");
}
mtr_error("Should never come here 3!");
}
@ -216,12 +218,21 @@ sub spawn_parent_impl {
{
if ( $mode eq 'run' )
{
# Simple run of command, we wait for it to return
# Simple run of command, wait blocking for it to return
my $ret_pid= waitpid($pid,0);
if ( $ret_pid != $pid )
{
mtr_error("waitpid($pid, 0) returned $ret_pid " .
"when waiting for '$path'");
# The "simple" waitpid has failed, print debug info
# and try to handle the error
mtr_warning("waitpid($pid, 0) returned $ret_pid " .
"when waiting for '$path', error: '$!'");
if ( $ret_pid == -1 )
{
# waitpid returned -1, that would indicate the process
# no longer exist and waitpid couldn't wait for it.
return 1;
}
mtr_error("Error handling failed");
}
return mtr_process_exit_status($?);
@ -1089,12 +1100,6 @@ sub mtr_kill_processes ($) {
#
##############################################################################
# FIXME something is wrong, we sometimes terminate with "Hangup" written
# to tty, and no STDERR output telling us why.
# FIXME for some reason, setting HUP to 'IGNORE' will cause exit() to
# write out "Hangup", and maybe loose some output. We insert a sleep...
sub mtr_exit ($) {
my $code= shift;
mtr_timer_stop_all($::glob_timers);
@ -1106,7 +1111,7 @@ sub mtr_exit ($) {
# set ourselves as the group leader at startup (with
# POSIX::setpgrp(0,0)), but then care must be needed to always do
# proper child process cleanup.
kill('HUP', -$$) if !$::glob_win32_perl and $$ == getpgrp();
POSIX::kill(SIGHUP, -$$) if !$::glob_win32_perl and $$ == getpgrp();
exit($code);
}

View File

@ -347,6 +347,7 @@ sub stop_all_servers ();
sub run_mysqltest ($);
sub usage ($);
######################################################################
#
# Main program
@ -1518,7 +1519,8 @@ sub executable_setup () {
sub generate_cmdline_mysqldump ($) {
my($mysqld) = @_;
return
"$exe_mysqldump --no-defaults -uroot " .
mtr_native_path($exe_mysqldump) .
" --no-defaults -uroot " .
"--port=$mysqld->{'port'} " .
"--socket=$mysqld->{'path_sock'} --password=";
}
@ -1624,7 +1626,7 @@ sub environment_setup () {
my $deb_version;
if ( $opt_valgrind and -d $debug_libraries_path and
(! -e '/etc/debian_version' or
($deb_version= mtr_grab_file('/etc/debian_version')) == 0 or
($deb_version= mtr_grab_file('/etc/debian_version')) !~ /^[0-9]+\.[0-9]$/ or
$deb_version > 3.1 ) )
{
push(@ld_library_paths, $debug_libraries_path);
@ -1721,9 +1723,10 @@ sub environment_setup () {
# Setup env so childs can execute mysqlcheck
# ----------------------------------------------------
my $cmdline_mysqlcheck=
"$exe_mysqlcheck --no-defaults -uroot " .
"--port=$master->[0]->{'port'} " .
"--socket=$master->[0]->{'path_sock'} --password=";
mtr_native_path($exe_mysqlcheck) .
" --no-defaults -uroot " .
"--port=$master->[0]->{'port'} " .
"--socket=$master->[0]->{'path_sock'} --password=";
if ( $opt_debug )
{
@ -1755,7 +1758,8 @@ sub environment_setup () {
if ( $exe_mysqlslap )
{
my $cmdline_mysqlslap=
"$exe_mysqlslap -uroot " .
mtr_native_path($exe_mysqlslap) .
" -uroot " .
"--port=$master->[0]->{'port'} " .
"--socket=$master->[0]->{'path_sock'} --password= " .
"--lock-directory=$opt_tmpdir";
@ -1772,7 +1776,8 @@ sub environment_setup () {
# Setup env so childs can execute mysqlimport
# ----------------------------------------------------
my $cmdline_mysqlimport=
"$exe_mysqlimport -uroot " .
mtr_native_path($exe_mysqlimport) .
" -uroot " .
"--port=$master->[0]->{'port'} " .
"--socket=$master->[0]->{'path_sock'} --password=";
@ -1788,7 +1793,8 @@ sub environment_setup () {
# Setup env so childs can execute mysqlshow
# ----------------------------------------------------
my $cmdline_mysqlshow=
"$exe_mysqlshow -uroot " .
mtr_native_path($exe_mysqlshow) .
" -uroot " .
"--port=$master->[0]->{'port'} " .
"--socket=$master->[0]->{'path_sock'} --password=";
@ -1803,7 +1809,7 @@ sub environment_setup () {
# Setup env so childs can execute mysqlbinlog
# ----------------------------------------------------
my $cmdline_mysqlbinlog=
"$exe_mysqlbinlog" .
mtr_native_path($exe_mysqlbinlog) .
" --no-defaults --local-load=$opt_tmpdir";
if ( $mysql_version_id >= 50000 )
{
@ -1821,7 +1827,8 @@ sub environment_setup () {
# Setup env so childs can execute mysql
# ----------------------------------------------------
my $cmdline_mysql=
"$exe_mysql --no-defaults --host=localhost --user=root --password= " .
mtr_native_path($exe_mysql) .
" --no-defaults --host=localhost --user=root --password= " .
"--port=$master->[0]->{'port'} " .
"--socket=$master->[0]->{'path_sock'} ".
"--character-sets-dir=$path_charsetsdir";
@ -1850,17 +1857,17 @@ sub environment_setup () {
# ----------------------------------------------------
# Setup env so childs can execute my_print_defaults
# ----------------------------------------------------
$ENV{'MYSQL_MY_PRINT_DEFAULTS'}= $exe_my_print_defaults;
$ENV{'MYSQL_MY_PRINT_DEFAULTS'}= mtr_native_path($exe_my_print_defaults);
# ----------------------------------------------------
# Setup env so childs can execute mysqladmin
# ----------------------------------------------------
$ENV{'MYSQLADMIN'}= $exe_mysqladmin;
$ENV{'MYSQLADMIN'}= mtr_native_path($exe_mysqladmin);
# ----------------------------------------------------
# Setup env so childs can execute perror
# ----------------------------------------------------
$ENV{'MY_PERROR'}= $exe_perror;
$ENV{'MY_PERROR'}= mtr_native_path($exe_perror);
# ----------------------------------------------------
# Add the path where mysqld will find udf_example.so
@ -2018,6 +2025,16 @@ sub remove_stale_vardir () {
mtr_verbose("Removing $opt_vardir/");
rmtree("$opt_vardir/");
}
if ( $opt_mem )
{
# A symlink from var/ to $opt_mem will be set up
# remove the $opt_mem dir to assure the symlink
# won't point at an old directory
mtr_verbose("Removing $opt_mem");
rmtree($opt_mem);
}
}
else
{
@ -3634,7 +3651,7 @@ sub mysqld_arguments ($$$$$) {
if ( $mysql_version_id <= 50106 )
{
# Force mysqld to use log files up until 5.1.6
mtr_add_arg($args, "%s--log=%s", $prefix, $master->[0]->{'path_mylog'});
mtr_add_arg($args, "%s--log=%s", $prefix, $slave->[0]->{'path_mylog'});
}
else
{
@ -4516,7 +4533,8 @@ sub run_mysqltest ($) {
# ----------------------------------------------------------------------
# export MYSQL_TEST variable containing <path>/mysqltest <args>
# ----------------------------------------------------------------------
$ENV{'MYSQL_TEST'}= "$exe_mysqltest " . join(" ", @$args);
$ENV{'MYSQL_TEST'}=
mtr_native_path($exe_mysqltest) . " " . join(" ", @$args);
# ----------------------------------------------------------------------
# Add arguments that should not go into the MYSQL_TEST env var

View File

@ -229,9 +229,7 @@ a
10000
select microsecond(19971231235959.01) as a;
a
0
Warnings:
Warning 1292 Truncated incorrect time value: '19971231235959.01'
10000
select date_add("1997-12-31",INTERVAL "10.09" SECOND_MICROSECOND) as a;
a
1997-12-31 00:00:10.090000

View File

@ -854,4 +854,8 @@ H
select last_day('0000-00-00');
last_day('0000-00-00')
NULL
select isnull(week(now() + 0)), isnull(week(now() + 0.2)),
week(20061108), week(20061108.01), week(20061108085411.000002);
isnull(week(now() + 0)) isnull(week(now() + 0.2)) week(20061108) week(20061108.01) week(20061108085411.000002)
0 0 45 45 45
End of 4.1 tests

View File

@ -578,7 +578,7 @@ create table t1 select POINT(1,3);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`POINT(1,3)` longblob NOT NULL
`POINT(1,3)` longblob
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
CREATE TABLE `t1` (`object_id` bigint(20) unsigned NOT NULL default '0', `geo`
@ -677,3 +677,45 @@ load data infile '../../std_data/bad_gis_data.dat' into table t1;
ERROR 01000: Data truncated; NULL supplied to NOT NULL column 'b' at row 1
alter table t1 enable keys;
drop table t1;
create table t1 (a int, b blob);
insert into t1 values (1, ''), (2, NULL), (3, '1');
select * from t1;
a b
1
2 NULL
3 1
select
geometryfromtext(b) IS NULL, geometryfromwkb(b) IS NULL, astext(b) IS NULL,
aswkb(b) IS NULL, geometrytype(b) IS NULL, centroid(b) IS NULL,
envelope(b) IS NULL, startpoint(b) IS NULL, endpoint(b) IS NULL,
exteriorring(b) IS NULL, pointn(b, 1) IS NULL, geometryn(b, 1) IS NULL,
interiorringn(b, 1) IS NULL, multipoint(b) IS NULL, isempty(b) IS NULL,
issimple(b) IS NULL, isclosed(b) IS NULL, dimension(b) IS NULL,
numgeometries(b) IS NULL, numinteriorrings(b) IS NULL, numpoints(b) IS NULL,
area(b) IS NULL, glength(b) IS NULL, srid(b) IS NULL, x(b) IS NULL,
y(b) IS NULL
from t1;
geometryfromtext(b) IS NULL geometryfromwkb(b) IS NULL astext(b) IS NULL aswkb(b) IS NULL geometrytype(b) IS NULL centroid(b) IS NULL envelope(b) IS NULL startpoint(b) IS NULL endpoint(b) IS NULL exteriorring(b) IS NULL pointn(b, 1) IS NULL geometryn(b, 1) IS NULL interiorringn(b, 1) IS NULL multipoint(b) IS NULL isempty(b) IS NULL issimple(b) IS NULL isclosed(b) IS NULL dimension(b) IS NULL numgeometries(b) IS NULL numinteriorrings(b) IS NULL numpoints(b) IS NULL area(b) IS NULL glength(b) IS NULL srid(b) IS NULL x(b) IS NULL y(b) IS NULL
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
select
within(b, b) IS NULL, contains(b, b) IS NULL, overlaps(b, b) IS NULL,
equals(b, b) IS NULL, disjoint(b, b) IS NULL, touches(b, b) IS NULL,
intersects(b, b) IS NULL, crosses(b, b) IS NULL
from t1;
within(b, b) IS NULL contains(b, b) IS NULL overlaps(b, b) IS NULL equals(b, b) IS NULL disjoint(b, b) IS NULL touches(b, b) IS NULL intersects(b, b) IS NULL crosses(b, b) IS NULL
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
select
point(b, b) IS NULL, linestring(b) IS NULL, polygon(b) IS NULL, multipoint(b) IS NULL,
multilinestring(b) IS NULL, multipolygon(b) IS NULL,
geometrycollection(b) IS NULL
from t1;
point(b, b) IS NULL linestring(b) IS NULL polygon(b) IS NULL multipoint(b) IS NULL multilinestring(b) IS NULL multipolygon(b) IS NULL geometrycollection(b) IS NULL
0 1 1 1 1 1 1
1 1 1 1 1 1 1
0 1 1 1 1 1 1
drop table t1;
End of 4.1 tests

View File

@ -210,7 +210,6 @@ source database
"MySQL: The world's most popular ;open source database"
echo message echo message
mysqltest: At line 1: Empty variable
mysqltest: At line 1: command "false" failed
mysqltest: At line 1: Missing argument in exec
MySQL
@ -507,8 +506,10 @@ drop table t1;
mysqltest: At line 1: Missing required argument 'filename' to command 'remove_file'
mysqltest: At line 1: Missing required argument 'filename' to command 'write_file'
mysqltest: At line 1: End of file encountered before 'EOF' delimiter was found
mysqltest: At line 1: End of line junk detected: "write_file filename ";
"
Some data
for cat_file command
of mysqltest
mysqltest: At line 1: Failed to open file non_existing_file
mysqltest: At line 1: Missing required argument 'filename' to command 'file_exists'
mysqltest: At line 1: Missing required argument 'from_file' to command 'copy_file'
mysqltest: At line 1: Missing required argument 'to_file' to command 'copy_file'

View File

@ -847,6 +847,30 @@ num (select num + 2 FROM t1 LIMIT 1)
SELECT a.a + 1 AS num FROM t1 a JOIN t1 b ON num = b.a;
ERROR 42S22: Unknown column 'num' in 'on clause'
DROP TABLE t1;
CREATE TABLE bug25126 (
val int unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY
);
UPDATE bug25126 SET MissingCol = MissingCol;
ERROR 42S22: Unknown column 'MissingCol' in 'field list'
UPDATE bug25126 SET val = val ORDER BY MissingCol;
ERROR 42S22: Unknown column 'MissingCol' in 'order clause'
UPDATE bug25126 SET val = val ORDER BY val;
UPDATE bug25126 SET val = 1 ORDER BY val;
UPDATE bug25126 SET val = 1 ORDER BY MissingCol;
ERROR 42S22: Unknown column 'MissingCol' in 'order clause'
UPDATE bug25126 SET val = 1 ORDER BY val, MissingCol;
ERROR 42S22: Unknown column 'MissingCol' in 'order clause'
UPDATE bug25126 SET val = MissingCol ORDER BY MissingCol;
ERROR 42S22: Unknown column 'MissingCol' in 'order clause'
UPDATE bug25126 SET MissingCol = 1 ORDER BY val, MissingCol;
ERROR 42S22: Unknown column 'MissingCol' in 'order clause'
UPDATE bug25126 SET MissingCol = 1 ORDER BY MissingCol;
ERROR 42S22: Unknown column 'MissingCol' in 'order clause'
UPDATE bug25126 SET MissingCol = val ORDER BY MissingCol;
ERROR 42S22: Unknown column 'MissingCol' in 'order clause'
UPDATE bug25126 SET MissingCol = MissingCol ORDER BY MissingCol;
ERROR 42S22: Unknown column 'MissingCol' in 'order clause'
DROP TABLE bug25126;
CREATE TABLE t1 (a int);
SELECT p.a AS val, q.a AS val1 FROM t1 p, t1 q ORDER BY val > 1;
val val1

View File

@ -492,4 +492,11 @@ union
select last_day('0000-00-00');
#
# Bug 23616: datetime functions with double argumets
#
select isnull(week(now() + 0)), isnull(week(now() + 0.2)),
week(20061108), week(20061108.01), week(20061108085411.000002);
--echo End of 4.1 tests

View File

@ -377,4 +377,38 @@ load data infile '../../std_data/bad_gis_data.dat' into table t1;
alter table t1 enable keys;
drop table t1;
# End of 4.1 tests
#
# Bug #26038: is null and bad data
#
create table t1 (a int, b blob);
insert into t1 values (1, ''), (2, NULL), (3, '1');
select * from t1;
select
geometryfromtext(b) IS NULL, geometryfromwkb(b) IS NULL, astext(b) IS NULL,
aswkb(b) IS NULL, geometrytype(b) IS NULL, centroid(b) IS NULL,
envelope(b) IS NULL, startpoint(b) IS NULL, endpoint(b) IS NULL,
exteriorring(b) IS NULL, pointn(b, 1) IS NULL, geometryn(b, 1) IS NULL,
interiorringn(b, 1) IS NULL, multipoint(b) IS NULL, isempty(b) IS NULL,
issimple(b) IS NULL, isclosed(b) IS NULL, dimension(b) IS NULL,
numgeometries(b) IS NULL, numinteriorrings(b) IS NULL, numpoints(b) IS NULL,
area(b) IS NULL, glength(b) IS NULL, srid(b) IS NULL, x(b) IS NULL,
y(b) IS NULL
from t1;
select
within(b, b) IS NULL, contains(b, b) IS NULL, overlaps(b, b) IS NULL,
equals(b, b) IS NULL, disjoint(b, b) IS NULL, touches(b, b) IS NULL,
intersects(b, b) IS NULL, crosses(b, b) IS NULL
from t1;
select
point(b, b) IS NULL, linestring(b) IS NULL, polygon(b) IS NULL, multipoint(b) IS NULL,
multilinestring(b) IS NULL, multipolygon(b) IS NULL,
geometrycollection(b) IS NULL
from t1;
drop table t1;
--echo End of 4.1 tests

View File

@ -552,8 +552,8 @@ echo ;
# Illegal use of echo
--error 1
--exec echo "echo \$;" | $MYSQL_TEST 2>&1
#--error 1
#--exec echo "echo \$;" | $MYSQL_TEST 2>&1
# ----------------------------------------------------------------------------
@ -1469,8 +1469,8 @@ remove_file non_existing_file;
--error 1
--exec echo "write_file filename ;" | $MYSQL_TEST 2>&1
--error 1
--exec echo "write_file filename \";" | $MYSQL_TEST 2>&1
#--error 1
#--exec echo "write_file filename \";" | $MYSQL_TEST 2>&1
write_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
Content for test_file1
@ -1484,6 +1484,74 @@ END_DELIMITER
file_exists $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
remove_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
# ----------------------------------------------------------------------------
# test for append_file
# ----------------------------------------------------------------------------
write_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
Content for test_file1
EOF
file_exists $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
append_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
Appended text
EOF
file_exists $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
remove_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
append_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
Appended text on nonexisting file
EOF
# ----------------------------------------------------------------------------
# test for cat_file
# ----------------------------------------------------------------------------
--write_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp
Some data
for cat_file command
of mysqltest
EOF
cat_file $MYSQLTEST_VARDIR/tmp/test_file1.tmp;
--error 1
--exec echo "cat_file non_existing_file;" | $MYSQL_TEST 2>&1
# ----------------------------------------------------------------------------
# test for diff_files
# ----------------------------------------------------------------------------
--write_file $MYSQLTEST_VARDIR/tmp/diff1.tmp
Some data
for diff_file command
of mysqltest
EOF
--write_file $MYSQLTEST_VARDIR/tmp/diff2.tmp
Some data
for diff_file command
of mysqltest
EOF
--write_file $MYSQLTEST_VARDIR/tmp/diff3.tmp
Some other data
for diff_file command
of mysqltest
EOF
# Compare equal files
--diff_files $MYSQLTEST_VARDIR/tmp/diff1.tmp $MYSQLTEST_VARDIR/tmp/diff2.tmp
--diff_files $MYSQLTEST_VARDIR/tmp/diff2.tmp $MYSQLTEST_VARDIR/tmp/diff1.tmp
# Compare files that differ
--error 1
--diff_files $MYSQLTEST_VARDIR/tmp/diff3.tmp $MYSQLTEST_VARDIR/tmp/diff2.tmp
--error 1
--diff_files $MYSQLTEST_VARDIR/tmp/diff1.tmp $MYSQLTEST_VARDIR/tmp/diff3.tmp
# Compare equal files, again...
--diff_files $MYSQLTEST_VARDIR/tmp/diff1.tmp $MYSQLTEST_VARDIR/tmp/diff2.tmp
# ----------------------------------------------------------------------------
# test for file_exist
# ----------------------------------------------------------------------------

View File

@ -575,6 +575,35 @@ SELECT a + 1 AS num, (select num + 2 FROM t1 LIMIT 1) FROM t1;
SELECT a.a + 1 AS num FROM t1 a JOIN t1 b ON num = b.a;
DROP TABLE t1;
#
# Bug#25126: Reference to non-existant column in UPDATE...ORDER BY...
# crashes server
#
CREATE TABLE bug25126 (
val int unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY
);
--error 1054
UPDATE bug25126 SET MissingCol = MissingCol;
--error 1054
UPDATE bug25126 SET val = val ORDER BY MissingCol;
UPDATE bug25126 SET val = val ORDER BY val;
UPDATE bug25126 SET val = 1 ORDER BY val;
--error 1054
UPDATE bug25126 SET val = 1 ORDER BY MissingCol;
--error 1054
UPDATE bug25126 SET val = 1 ORDER BY val, MissingCol;
--error 1054
UPDATE bug25126 SET val = MissingCol ORDER BY MissingCol;
--error 1054
UPDATE bug25126 SET MissingCol = 1 ORDER BY val, MissingCol;
--error 1054
UPDATE bug25126 SET MissingCol = 1 ORDER BY MissingCol;
--error 1054
UPDATE bug25126 SET MissingCol = val ORDER BY MissingCol;
--error 1054
UPDATE bug25126 SET MissingCol = MissingCol ORDER BY MissingCol;
DROP TABLE bug25126;
#
# Bug #25427: crash when order by expression contains a name
# that cannot be resolved unambiguously