From 15440264430b8dd7c10d950926a34f8f20f14427 Mon Sep 17 00:00:00 2001 From: "Matthias Leich mleich@mysql.com" Date: Mon, 2 Jun 2008 21:57:11 +0200 Subject: Bug#36788 Multiple funcs_1 'trig' tests are failing on vanilla builds Fix for this bug and additional improvements/fixes In detail: - Remove unicode attribute from several columns (unicode properties were nowhere needed/tested) of the table tb3 -> The runnability of these tests depends no more on the availibility of some optional collations. - Use a table tb3 with the same layout for all engines to be tested and unify the engine name within the protocols. -> _trig_.result have the same content - Do not load data into tb3 if these rows have no impact on result sets - Add tests for NDB (they exist already in 5.1) - "--replace_result" at various places because NDB variants of tests failed with "random" row order in results This fixes a till now unknown weakness within the funcs_1 NDB tests existing in 5.1 and 6.0 - Fix the expected result of ndb_trig_1011ext which suffered from Bug 32656 + disable this test - funcs_1 could be executed with the mysql-test-run.pl option "--reorder", which saves some runtime by optimizing server restarts. Runtimes on tmpfs (one attempt only): with reorder 132 seconds without reorder 183 seconds - Adjust two "check" statements within func_misc.test which were incorrect (We had one run with result set difference though the server worked good.) - minor fixes in comments --- mysql-test/suite/funcs_1/r/innodb_trig_0102.result | 34 +++++++++------------- 1 file changed, 13 insertions(+), 21 deletions(-) (limited to 'mysql-test/suite/funcs_1/r/innodb_trig_0102.result') diff --git a/mysql-test/suite/funcs_1/r/innodb_trig_0102.result b/mysql-test/suite/funcs_1/r/innodb_trig_0102.result index ff1836f1313..1ada907f9e6 100644 --- a/mysql-test/suite/funcs_1/r/innodb_trig_0102.result +++ b/mysql-test/suite/funcs_1/r/innodb_trig_0102.result @@ -1,17 +1,11 @@ USE test; -drop table if exists tb3 ; +drop table if exists tb3; create table tb3 ( f118 char not null DEFAULT 'a', f119 char binary not null DEFAULT b'101', f120 char ascii not null DEFAULT b'101', -f121 tinytext, -f122 text, -f123 mediumtext, -f124 longtext unicode, -f125 tinyblob, -f126 blob, -f127 mediumblob, -f128 longblob, +f121 char(50), +f122 char(50), f129 binary not null DEFAULT b'101', f130 tinyint not null DEFAULT 99, f131 tinyint unsigned not null DEFAULT 99, @@ -59,13 +53,11 @@ f172 numeric zerofill, f173 numeric unsigned zerofill, f174 numeric (0), f175 numeric (64) -) engine = innodb; +) engine = ; Warnings: Note 1265 Data truncated for column 'f150' at row 1 Note 1265 Data truncated for column 'f151' at row 1 Note 1265 Data truncated for column 'f152' at row 1 -load data infile '/std_data_ln/funcs_1/innodb_tb3.txt' -into table tb3; Testcase: 3.5.1.1: ------------------ @@ -194,7 +186,7 @@ Testcase 3.5.1.7: - need to fix drop table if exists t1; Warnings: Note 1051 Unknown table 't1' -create table t1 (f1 int, f2 char(25),f3 int) engine=innodb; +create table t1 (f1 int, f2 char(25),f3 int) engine = ; CREATE TRIGGER trg5_1 BEFORE INSERT on test.t1 for each row set new.f3 = '14'; CREATE TRIGGER trg_abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ @@ -233,7 +225,7 @@ ERROR HY000: Trigger in wrong schema drop database if exists trig_db; create database trig_db; use trig_db; -create table t1 (f1 integer) engine = innodb; +create table t1 (f1 integer) engine = ; use test; CREATE TRIGGER trig_db.trg6_2 AFTER INSERT on tb3 for each row set @ret_trg6_2 = 5; @@ -261,8 +253,8 @@ Testcase 3.5.1.?: ----------------- drop table if exists t1; drop table if exists t2; -create table t1 (f1 char(50), f2 integer) engine = innodb; -create table t2 (f1 char(50), f2 integer) engine = innodb; +create table t1 (f1 char(50), f2 integer) engine = ; +create table t2 (f1 char(50), f2 integer) engine = ; create trigger trig before insert on t1 for each row set new.f1 ='trig t1'; create trigger trig before update on t2 @@ -294,15 +286,15 @@ create database trig_db1; create database trig_db2; create database trig_db3; use trig_db1; -create table t1 (f1 char(50), f2 integer) engine = innodb; +create table t1 (f1 char(50), f2 integer) engine = ; create trigger trig before insert on t1 for each row set new.f1 ='trig1', @test_var1='trig1'; use trig_db2; -create table t2 (f1 char(50), f2 integer) engine = innodb; +create table t2 (f1 char(50), f2 integer) engine = ; create trigger trig before insert on t2 for each row set new.f1 ='trig2', @test_var2='trig2'; use trig_db3; -create table t1 (f1 char(50), f2 integer) engine = innodb; +create table t1 (f1 char(50), f2 integer) engine = ; create trigger trig before insert on t1 for each row set new.f1 ='trig3', @test_var3='trig3'; set @test_var1= '', @test_var2= '', @test_var3= ''; @@ -340,8 +332,8 @@ drop database if exists trig_db2; create database trig_db1; create database trig_db2; use trig_db1; -create table t1 (f1 char(50), f2 integer) engine = innodb; -create table trig_db2.t1 (f1 char(50), f2 integer) engine = innodb; +create table t1 (f1 char(50), f2 integer) engine = ; +create table trig_db2.t1 (f1 char(50), f2 integer) engine = ; create trigger trig1_b before insert on t1 for each row set @test_var1='trig1_b'; create trigger trig_db1.trig1_a after insert on t1 -- cgit v1.2.1