maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #00841
Re: [Merge] lp:~paul-mccullagh/maria/maria-pbxt-rc2 into lp:maria
Paul McCullagh <paul.mccullagh@xxxxxxxxxxxxx> writes:
> Paul McCullagh has proposed merging lp:~paul-mccullagh/maria/maria-pbxt-rc2 into lp:maria.
>
> Requested reviews:
> Maria-captains (maria-captains)
>
> Updated the PBXT engine to RC2 (lp:pbxt/rc2), version 1.0.08c. All tests in the PBXT suite pass.
>
> Note that this branch does not yet include the entire history of PBXT because attempts to do this have failed so far due to problems with bzr.
Thanks a lot Paul for preparing this.
I tried building your tree and running the test suite. I have a question, as I
got some build and test failures. I suspect that perhaps your tree is missing
a commit, or maybe has one too many.
Your tree has the following 3 commits in addition to lp:maria:
2722 Paul McCullagh 2009-08-18
Merged changes for bug fix update 1.0.08c RC2
2721 Paul McCullagh 2009-08-17
Updated all tests for RC2
2720 Paul McCullagh 2009-08-17
Updated PBXT to version 1.0.08 RC2
If I build revision 2721 (drop the last commit), things look good. I even have
zero failures in the test suite with a simple patch (attached), mostly some
simple fixes for case-sensitive file system.
But if I try the current tree, revision 2722, I get both build and test
failures, as detailed below.
So the basic question is, should I merge just revision 2721, or should I merge
2722 with some additional build (and test?) fixes?
-----------------------------------------------------------------------
So some more details.
First, I fixed all of the test failures in revision 2721 with a simple patch
(attached). The only problem was the *-master.opt files were not copied along
with test .test files from the main suite. This caused failures on
case-sensitive file systems (and also failure in udf.test due to wrong search
path for .so). You should of course check the patch, but I think it should be
ok.
Now, for the problems in revision 2722:
They might be related to the replacement of stream_xt with pbms_enabled. To
even build, I need this patch:
--- storage/pbxt/src/Makefile.am 2009-05-09 04:01:53 +0000
+++ storage/pbxt/src/Makefile.am 2009-08-28 10:11:41 +0000
@@ -19,7 +19,7 @@ noinst_HEADERS = bsearch_xt.h cache_xt.
datadic_xt.h datalog_xt.h filesys_xt.h hashtab_xt.h \
ha_pbxt.h heap_xt.h index_xt.h linklist_xt.h \
memory_xt.h myxt_xt.h pthread_xt.h restart_xt.h \
- streaming_xt.h sortedlist_xt.h strutil_xt.h \
+ pbms_enabled.h sortedlist_xt.h strutil_xt.h \
tabcache_xt.h table_xt.h trace_xt.h thread_xt.h \
util_xt.h xaction_xt.h xactlog_xt.h lock_xt.h \
systab_xt.h ha_xtsys.h discover_xt.h \
@@ -30,7 +30,7 @@ libpbxt_la_SOURCES = bsearch_xt.cc cache
datadic_xt.cc datalog_xt.cc filesys_xt.cc hashtab_xt.cc \
ha_pbxt.cc heap_xt.cc index_xt.cc linklist_xt.cc \
memory_xt.cc myxt_xt.cc pthread_xt.cc restart_xt.cc \
- streaming_xt.cc sortedlist_xt.cc strutil_xt.cc \
+ pbms_enabled.cc sortedlist_xt.cc strutil_xt.cc \
tabcache_xt.cc table_xt.cc trace_xt.cc thread_xt.cc \
systab_xt.cc ha_xtsys.cc discover_xt.cc \
util_xt.cc xaction_xt.cc xactlog_xt.cc lock_xt.cc locklist_xt.cc
I assume you must have something similar, maybe you forgot to push it?
And in the test suite, I get some failures. For example, the following:
create database mysqltest;
create table t1 (c1 int);
alter table t1 rename mysqltest.t1;
mysqltest: At line 3: query 'alter table t1 rename mysqltest.t1' failed: 1025: Error on rename of './test/t1' to './mysqltest/t1' (errno: 16)
In the mysqld.1.err log I have this:
090828 16:19:14 [Error] pbms_rename_table_with_blobs() Error: PBMS does not support renaming tables across databases.
Which is a bit strange since table t1 has only an int?
There are 3 other test failures, which from a quick look might be related to
blob. I attached the full mysql-test-run output, maybe you can take a look?
Please let me know if you know what the issue is, or what more I can do to
help.
- Kristian.
=== modified file 'mysql-test/suite/pbxt/r/lowercase_view.result'
--- mysql-test/suite/pbxt/r/lowercase_view.result 2009-04-02 20:36:52 +0000
+++ mysql-test/suite/pbxt/r/lowercase_view.result 2009-08-28 11:19:59 +0000
@@ -119,7 +119,7 @@ create table t1Aa (col1 int);
create view v1Aa as select col1 from t1Aa as AaA;
show create view v1AA;
View Create View character_set_client collation_connection
-v1aa CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1aa` AS select `AaA`.`col1` AS `col1` from `t1aa` `AaA` latin1 latin1_swedish_ci
+v1aa CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1aa` AS select `aaa`.`col1` AS `col1` from `t1aa` `aaa` latin1 latin1_swedish_ci
drop view v1AA;
select Aaa.col1 from t1Aa as AaA;
col1
@@ -128,7 +128,7 @@ drop view v1AA;
create view v1Aa as select AaA.col1 from t1Aa as AaA;
show create view v1AA;
View Create View character_set_client collation_connection
-v1aa CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1aa` AS select `AaA`.`col1` AS `col1` from `t1aa` `AaA` latin1 latin1_swedish_ci
+v1aa CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1aa` AS select `aaa`.`col1` AS `col1` from `t1aa` `aaa` latin1 latin1_swedish_ci
drop view v1AA;
drop table t1Aa;
CREATE TABLE t1 (a int, b int);
@@ -142,7 +142,7 @@ CREATE OR REPLACE VIEW v1 AS
select X.a from t1 AS X group by X.b having (X.a = 1);
SHOW CREATE VIEW v1;
View Create View character_set_client collation_connection
-v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `X`.`a` AS `a` from `t1` `X` group by `X`.`b` having (`X`.`a` = 1) latin1 latin1_swedish_ci
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `x`.`a` AS `a` from `t1` `x` group by `x`.`b` having (`x`.`a` = 1) latin1 latin1_swedish_ci
SELECT * FROM v1;
a
DROP VIEW v1;
=== added file 'mysql-test/suite/pbxt/t/lowercase_table_grant-master.opt'
--- mysql-test/suite/pbxt/t/lowercase_table_grant-master.opt 1970-01-01 00:00:00 +0000
+++ mysql-test/suite/pbxt/t/lowercase_table_grant-master.opt 2009-08-28 11:13:02 +0000
@@ -0,0 +1 @@
+--lower_case_table_names
=== added file 'mysql-test/suite/pbxt/t/lowercase_table_qcache-master.opt'
--- mysql-test/suite/pbxt/t/lowercase_table_qcache-master.opt 1970-01-01 00:00:00 +0000
+++ mysql-test/suite/pbxt/t/lowercase_table_qcache-master.opt 2009-08-28 11:22:29 +0000
@@ -0,0 +1 @@
+--lower_case_table_names
=== added file 'mysql-test/suite/pbxt/t/lowercase_view-master.opt'
--- mysql-test/suite/pbxt/t/lowercase_view-master.opt 1970-01-01 00:00:00 +0000
+++ mysql-test/suite/pbxt/t/lowercase_view-master.opt 2009-08-28 11:10:22 +0000
@@ -0,0 +1 @@
+--lower_case_table_names=1
=== added file 'mysql-test/suite/pbxt/t/udf-master.opt'
--- mysql-test/suite/pbxt/t/udf-master.opt 1970-01-01 00:00:00 +0000
+++ mysql-test/suite/pbxt/t/udf-master.opt 2009-08-28 11:24:08 +0000
@@ -0,0 +1 @@
+$UDF_EXAMPLE_LIB_OPT
Logging: mysql-test-run.pl --force --max-test-fail=0 --retry-failure=1 --mysqld=--default-storage-engine=pbxt --suite=pbxt pbxt.alter_table pbxt.create pbxt.lowercase_table_grant pbxt.lowercase_table_qcache pbxt.lowercase_view pbxt.ps_1general pbxt.type_ranges pbxt.udf
MySQL Version 5.1.35
Using default engine 'pbxt'
Checking supported features...
- skipping ndbcluster, mysqld not compiled with ndbcluster
- SSL connections supported
- binaries are debug compiled
Collecting tests...
vardir: /home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/var
Checking leftover processes...
Removing old var directory...
Creating var directory '/home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/var'...
Installing system database...
Using server port 43066
==============================================================================
TEST RESULT TIME (ms)
------------------------------------------------------------
worker[1] Using MTR_BUILD_THREAD 250, with reserved ports 12500..12509
pbxt.udf [ pass ] 6146
pbxt.lowercase_view [ pass ] 914
pbxt.lowercase_table_grant [ pass ] 5
pbxt.lowercase_table_qcache [ pass ] 827
pbxt.alter_table [ fail ]
Test ended at 2009-08-28 13:25:27
CURRENT_TEST: pbxt.alter_table
mysqltest: At line 530: query 'alter table t1 rename mysqltest.t1' failed: 1025: Error on rename of './test/t1' to './mysqltest/t1' (errno: 16)
The result from queries just before the failure was:
< snip >
alter table t1 modify a bigint, disable keys;
show indexes from t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t1 0 a 1 a A 0 NULL NULL YES BTREE
t1 1 b 1 b A 0 NULL NULL YES BTREE
"Change again the type, but leave the indexes as_is"
alter table t1 modify a int;
show indexes from t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t1 0 a 1 a A 0 NULL NULL YES BTREE
t1 1 b 1 b A 0 NULL NULL YES BTREE
"Try the same. When data is no copied on similar tables, this is noop"
alter table t1 modify a int;
show indexes from t1;
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
t1 0 a 1 a A 0 NULL NULL YES BTREE
t1 1 b 1 b A 0 NULL NULL YES BTREE
drop table t1;
create database mysqltest;
create table t1 (c1 int);
More results from queries before failure can be found in /home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/var/log/alter_table.log
- saving '/home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/var/log/pbxt.alter_table/' to '/home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/var/log/pbxt.alter_table/'
Test has failed 1 times, no more retries!
pbxt.create [ fail ]
Test ended at 2009-08-28 13:25:29
CURRENT_TEST: pbxt.create
--- /home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/suite/pbxt/r/create.result 2009-08-28 12:41:10.000000000 +0300
+++ /home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/suite/pbxt/r/create.reject 2009-08-28 14:25:29.000000000 +0300
@@ -448,8 +448,8 @@
dd time YES NULL
select * from t2;
a b c d e f g h dd
-1 -7 7 2000-01-01 b 2000-01-01 00:00:00 05:04:03 yet another binary data 02:00:00
-2 -2 2 1825-12-14 a 2003-01-01 03:02:01 04:03:02 binary data 02:00:00
+1 -7 7 2000-01-01 b 2000-01-01 00:00:00 05:04:03 +2 -2 2 1825-12-14 a 2003-01-01 03:02:01 04:03:02 drop table t1, t2;
create table t1 (a tinyint, b smallint, c mediumint, d int, e bigint, f float(3,2), g double(4,3), h decimal(5,4), i year, j date, k timestamp, l datetime, m enum('a','b'), n set('a','b'), o char(10));
create table t2 select ifnull(a,a), ifnull(b,b), ifnull(c,c), ifnull(d,d), ifnull(e,e), ifnull(f,f), ifnull(g,g), ifnull(h,h), ifnull(i,i), ifnull(j,j), ifnull(k,k), ifnull(l,l), ifnull(m,m), ifnull(n,n), ifnull(o,o) from t1;
mysqltest: Result length mismatch
- saving '/home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/var/log/pbxt.create/' to '/home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/var/log/pbxt.create/'
Test has failed 1 times, no more retries!
pbxt.ps_1general [ fail ]
Test ended at 2009-08-28 13:25:32
CURRENT_TEST: pbxt.ps_1general
--- /home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/suite/pbxt/r/ps_1general.result 2009-08-28 12:41:03.000000000 +0300
+++ /home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/suite/pbxt/r/ps_1general.reject 2009-08-28 14:25:32.000000000 +0300
@@ -293,7 +293,7 @@
prepare stmt4 from ' show table status from test like ''t2%'' ';
execute stmt4;
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
-t2 PBXT 10 Fixed 0 29 1 # 4096 0 NULL # # # latin1_swedish_ci NULL
+t2 PBXT 10 Fixed 0 29 1024 # 4096 0 NULL # # # latin1_swedish_ci NULL
prepare stmt4 from ' show table status from test like ''t9%'' ';
execute stmt4;
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
mysqltest: Result length mismatch
- saving '/home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/var/log/pbxt.ps_1general/' to '/home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/var/log/pbxt.ps_1general/'
Test has failed 1 times, no more retries!
pbxt.type_ranges [ fail ]
Test ended at 2009-08-28 13:25:33
CURRENT_TEST: pbxt.type_ranges
--- /home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/suite/pbxt/r/type_ranges.result 2009-08-28 12:41:10.000000000 +0300
+++ /home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/suite/pbxt/r/type_ranges.reject 2009-08-28 14:25:33.000000000 +0300
@@ -127,13 +127,13 @@
insert into t1 (tiny) values (1);
select auto,string,tiny,short,medium,long_int,longlong,real_float,real_double,utiny,ushort,umedium,ulong,ulonglong,mod(floor(time_stamp/1000000),1000000)-mod(curdate(),1000000),date_field,time_field,date_time,blob_col,tinyblob_col,mediumblob_col,longblob_col from t1;
auto string tiny short medium long_int longlong real_float real_double utiny ushort umedium ulong ulonglong mod(floor(time_stamp/1000000),1000000)-mod(curdate(),1000000) date_field time_field date_time blob_col tinyblob_col mediumblob_col longblob_col
-10 1 1 1 1 1 1 1.0 1.0000 1 00001 1 1 1 0 0000-00-00 00:00:00 0000-00-00 00:00:00 1 1 1 1
-11 2 2 2 2 2 2 2.0 2.0000 2 00002 2 2 2 0 NULL NULL NULL NULL NULL 2 2
-12 0.33333333 3 3 3 3 3 3.0 3.0000 3 00003 3 3 3 0 1997-03-03 10:10:10 1997-03-03 10:10:10 3
-13 -1 -1 -1 -1 -1 -1 -1.0 -1.0000 0 00000 0 0 0 0 1997-08-07 08:07:06 1997-04-03 09:08:07 -1 -1 -1 -1
-14 -429496729 -128 -32768 -8388608 -2147483648 -4294967295 -4294967296.0 -4294967295.0000 0 00000 0 0 0 0 0000-00-00 00:00:00 0000-00-00 00:00:00 -4294967295 -4294967295 -4294967295 -4294967295
-15 4294967295 127 32767 8388607 2147483647 4294967295 4294967296.0 4294967295.0000 255 65535 16777215 4294967295 4294967295 0 0000-00-00 00:00:00 0000-00-00 00:00:00 4294967295 4294967295 4294967295 4294967295
-16 hello 1 1 0 0 0 0.0 NULL 0 00000 0 0 0 0 NULL NULL NULL NULL NULL
+10 1 1 1 1 1 1 1.0 1.0000 1 00001 1 1 1 0 0000-00-00 00:00:00 0000-00-00 00:00:00 1 1 1 +11 2 2 2 2 2 2 2.0 2.0000 2 00002 2 2 2 0 NULL NULL NULL NULL NULL 2 +12 0.33333333 3 3 3 3 3 3.0 3.0000 3 00003 3 3 3 0 1997-03-03 10:10:10 1997-03-03 10:10:10 +13 -1 -1 -1 -1 -1 -1 -1.0 -1.0000 0 00000 0 0 0 0 1997-08-07 08:07:06 1997-04-03 09:08:07 -1 -1 -1 +14 -429496729 -128 -32768 -8388608 -2147483648 -4294967295 -4294967296.0 -4294967295.0000 0 00000 0 0 0 0 0000-00-00 00:00:00 0000-00-00 00:00:00 -4294967295 -4294967295 -4294967295 +15 4294967295 127 32767 8388607 2147483647 4294967295 4294967296.0 4294967295.0000 255 65535 16777215 4294967295 4294967295 0 0000-00-00 00:00:00 0000-00-00 00:00:00 4294967295 4294967295 4294967295 +16 hello 1 1 0 0 0 0.0 NULL 0 00000 0 0 0 0 NULL NULL NULL NULL NULL ALTER TABLE t1
add new_field char(10) default "new" not null,
change blob_col new_blob_col varchar(20),
@@ -282,13 +282,13 @@
t8 binary(0) NULL NO #
select t1,t2,length(t3),length(t4),length(t5),length(t6),t7,t8 from t2;
t1 t2 length(t3) length(t4) length(t5) length(t6) t7 t8
-1 a 256 256 4096 4096
-1 a 256 256 4096 4096
-1 a 256 256 4096 4096
-1 a 256 256 4096 4096
-1 a 256 256 4096 4096
-1 a 256 256 4096 4096
-1 a 256 256 4096 4096
+1 a 256 256 4096 1
+1 a 256 256 4096 1
+1 a 256 256 4096 1
+1 a 256 256 4096 1
+1 a 256 256 4096 1
+1 a 256 256 4096 1
+1 a 256 256 4096 1
drop table t1,t2;
create table t1 (c int);
insert into t1 values(1),(2);
mysqltest: Result length mismatch
- saving '/home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/var/log/pbxt.type_ranges/' to '/home/knielsen/devel/maria/my/maria-pbxt-rc2/mysql-test/var/log/pbxt.type_ranges/'
Test has failed 1 times, no more retries!
------------------------------------------------------------
The servers were restarted 6 times
Spent 7.892 of 21 seconds executing testcases
Failed 4/8 tests, 50.00% were successful.
Failing test(s): pbxt.alter_table pbxt.create pbxt.ps_1general pbxt.type_ranges
The log files in var/log may give you some hint of what went wrong.
If you want to report this error, please read first the documentation
at http://dev.mysql.com/doc/mysql/en/mysql-test-suite.html
Follow ups
References