Commit 98b03424 authored by unknown's avatar unknown

Merge bk-internal.mysql.com:/home/bk/mysql-5.1

into serg.mylan:/usr/home/serg/Abk/m51

parents b14ac39b b20b17d6
......@@ -101,7 +101,9 @@ dist-hook:
tags:
support-files/build-tags
.PHONY: init-db bin-dist
.PHONY: init-db bin-dist test test-full test-ps test-nr \
test-ns test-pr test-unit
# Target 'test' will run the regression test suite using the built server.
#
......@@ -111,29 +113,34 @@ tags:
# will then calculate the various port numbers it needs from this,
# making sure each user use different ports.
test:
test-unit:
cd unittest && $(MAKE) test
test-ps:
cd mysql-test ; \
./mysql-test-run.pl --mysqld=--binlog-format=statement && \
./mysql-test-run.pl --ps-protocol --mysqld=--binlog-format=row
./mysql-test-run.pl $(force) --ps-protocol --mysqld=--binlog-format=statement
test-full:
test-nr:
cd mysql-test ; \
./mysql-test-run.pl --mysqld=--binlog-format=statement && \
./mysql-test-run.pl --ps-protocol --mysqld=--binlog-format=statement && \
./mysql-test-run.pl --mysqld=--binlog-format=row && \
./mysql-test-run.pl --ps-protocol --mysqld=--binlog-format=row
./mysql-test-run.pl $(force) --mysqld=--binlog-format=row
test-force:
test-pr:
cd mysql-test ; \
./mysql-test-run.pl --force --mysqld=--binlog-format=statement && \
./mysql-test-run.pl --ps-protocol --force --mysqld=--binlog-format=row
./mysql-test-run.pl $(force) --ps-protocol --mysqld=--binlog-format=row
test-force-full:
test-ns:
cd mysql-test ; \
./mysql-test-run.pl --force --mysqld=--binlog-format=statement && \
./mysql-test-run.pl --force --ps-protocol --mysqld=--binlog-format=statement && \
./mysql-test-run.pl --force --mysqld=--binlog-format=row && \
./mysql-test-run.pl --force --ps-protocol --mysqld=--binlog-format=row
./mysql-test-run.pl $(force) --mysqld=--binlog-format=statement
test: test-unit test-ns test-pr
test-full: test test-nr test-ps
test-force:
$(MAKE) force=--force test
test-force-full:
$(MAKE) force=--force test-full
# Keep these for a while
test-pl: test
......@@ -141,8 +148,6 @@ test-full-pl: test-full
test-force-pl: test-force
test-force-full-pl: test-force-full
# Don't update the files from bitkeeper
%::SCCS/s.%
......@@ -50,3 +50,20 @@ venue_id venue_text dt name entity_id
1 a1 2003-05-23 19:30:00 aberdeen town hall 1
NULL a2 2003-05-23 19:30:00 NULL NULL
drop table t1,t2;
create table t1 (id int not null primary key, d char(200) not null, e char(200));
insert into t1 values (1, 'aword', null), (2, 'aword', 'bword'), (3, 'bword', null), (4, 'bword', 'aword'), (5, 'aword and bword', null);
select * from t1 where match(d, e) against ('+aword +bword' in boolean mode);
id d e
2 aword bword
4 bword aword
5 aword and bword NULL
create table t2 (m_id int not null, f char(200), key (m_id));
insert into t2 values (1, 'bword'), (3, 'aword'), (5, '');
select * from t1 left join t2 on m_id = id where match(d, e, f) against ('+aword +bword' in boolean mode);
id d e m_id f
1 aword NULL 1 bword
2 aword bword NULL NULL
3 bword NULL 3 aword
4 bword aword NULL NULL
5 aword and bword NULL 5
drop table t1,t2;
......@@ -32,7 +32,7 @@ select match(t1.texte,t1.sujet,t1.motsclefs) against('droit' IN BOOLEAN MODE)
drop table t1, t2;
#
# Bug #484, reported by Stephen Brandon <stephen@brandonitconsulting.co.uk>
# BUG#484, reported by Stephen Brandon <stephen@brandonitconsulting.co.uk>
#
create table t1 (venue_id int(11) default null, venue_text varchar(255) default null, dt datetime default null) engine=myisam;
......@@ -45,4 +45,17 @@ select * from t1 left join t2 on (venue_id = entity_id and match(name) against('
select * from t1 left join t2 on (venue_id = entity_id and match(name) against('aberdeen')) where dt = '2003-05-23 19:30:00';
drop table t1,t2;
#
# BUG#14708
# Inconsistent treatment of NULLs in LEFT JOINed FULLTEXT matching without index
#
create table t1 (id int not null primary key, d char(200) not null, e char(200));
insert into t1 values (1, 'aword', null), (2, 'aword', 'bword'), (3, 'bword', null), (4, 'bword', 'aword'), (5, 'aword and bword', null);
select * from t1 where match(d, e) against ('+aword +bword' in boolean mode);
create table t2 (m_id int not null, f char(200), key (m_id));
insert into t2 values (1, 'bword'), (3, 'aword'), (5, '');
select * from t1 left join t2 on m_id = id where match(d, e, f) against ('+aword +bword' in boolean mode);
drop table t1,t2;
# End of 4.1 tests
......@@ -320,16 +320,16 @@ prepare stmt4 from ' show status like ''Threads_running'' ';
execute stmt4;
prepare stmt4 from ' show variables like ''sql_mode'' ';
execute stmt4;
prepare stmt4 from ' show engine bdb logs ';
# The output depends on the bdb being enabled and on the history
# history (actions of the bdb engine).
# That is the reason why, we switch the output here off.
# (The real output will be tested in ps_6bdb.test)
--disable_warnings
prepare stmt4 from ' show engine bdb logs ';
--enable_warnings
--disable_result_log
execute stmt4;
--enable_result_log
--enable_warnings
prepare stmt4 from ' show grants for user ';
--error 1295
prepare stmt4 from ' show create table t2 ';
......
......@@ -4516,7 +4516,7 @@ double Item_func_match::val_real()
if (ft_handler == NULL)
DBUG_RETURN(-1.0);
if (table->null_row) /* NULL row from an outer join */
if (key != NO_SUCH_KEY && table->null_row) /* NULL row from an outer join */
DBUG_RETURN(0.0);
if (join_key)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment