Commit 710abe53 authored by unknown's avatar unknown
Browse files

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

into serg.mylan:/usr/home/serg/Abk/mysql-5.0


mysql-test/r/ctype_sjis.result:
  Auto merged
mysql-test/t/ctype_sjis.test:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
parents 9668198e 64c856c9
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -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;
+14 −1
Original line number Diff line number Diff line
@@ -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
+1 −1
Original line number Diff line number Diff line
@@ -4512,7 +4512,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 */
    return 0.0;

  if (join_key)