Commit 0f25a1a0 authored by monty@hundin.mysql.fi's avatar monty@hundin.mysql.fi
Browse files

Merge work:/home/bk/mysql into hundin.mysql.fi:/my/bk/mysql

parents f6321e8b 6ee6fbf7
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -46845,6 +46845,14 @@ not yet 100% confident in this code.
@appendixsubsec Changes in release 3.23.44
@itemize @bullet
@item
Don't use @code{signal()} on windows because this appears to not be
100 % reliable.
@item
Fixed bug when doing @code{WHERE column_name=NULL} on an indexed column
that had @code{NULL} values.
@item
Fixed bug when doing @code{LEFT JOIN ...  ON (column_name = constant) WHERE column_name = constant}.
@item
When using replications, aborted queries that contained @code{%} could cause
a core dum.
@item
+2 −2
Original line number Diff line number Diff line
@@ -1002,7 +1002,7 @@ mysql_init(MYSQL *mysql)
  else
    bzero((char*) (mysql),sizeof(*(mysql)));
  mysql->options.connect_timeout=CONNECT_TIMEOUT;
#if defined(SIGPIPE) && defined(THREAD)
#if defined(SIGPIPE) && defined(THREAD) && !defined(__WIN__)
  if (!((mysql)->client_flag & CLIENT_IGNORE_SIGPIPE))
    (void) signal(SIGPIPE,pipe_sig_handler);
#endif
@@ -1043,7 +1043,7 @@ static void mysql_once_init()
	mysql_unix_port = env;
    }
    mysql_debug(NullS);
#if defined(SIGPIPE) && !defined(THREAD)
#if defined(SIGPIPE) && !defined(THREAD) && !defined(__WIN__)
    (void) signal(SIGPIPE,SIG_IGN);
#endif
  }
+2 −0
Original line number Diff line number Diff line
@@ -318,3 +318,5 @@ t1 ALL NULL NULL NULL NULL 2
t2	index	id	id	8	NULL	1	where used; Using index; Not exists
id	name	id	idx
2	no	NULL	NULL
bug_id	reporter	bug_id	who
1	1	1	2
+7 −0
Original line number Diff line number Diff line
@@ -23,3 +23,10 @@ NULL 0
inet_ntoa(null)	inet_aton(null)	inet_aton("122.256")	inet_aton("122.226.")	inet_aton("")
NULL	NULL	NULL	NULL	NULL
x
indexed_field
indexed_field
NULL
NULL
indexed_field
NULL
NULL
+10 −0
Original line number Diff line number Diff line
@@ -394,3 +394,13 @@ INSERT INTO t2 VALUES (1,1);
explain SELECT * from t1 left join t2 on t1.id=t2.id where t2.id IS NULL;
SELECT * from t1 left join t2 on t1.id=t2.id where t2.id IS NULL;
drop table t1,t2;

#
# Test problem with using key_column= constant in ON and WHERE
#
create table t1 (bug_id mediumint, reporter mediumint);
create table t2 (bug_id mediumint, who mediumint, index(who));
insert into t2 values (1,1),(1,2);
insert into t1 values (1,1),(2,1);
SELECT * FROM t1 LEFT JOIN t2 ON (t1.bug_id =  t2.bug_id AND  t2.who = 2) WHERE  (t1.reporter = 2 OR t2.who = 2);
drop table t1,t2;
Loading