Loading Docs/manual.texi +8 −0 Original line number Diff line number Diff line Loading @@ -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 libmysql/libmysql.c +2 −2 Original line number Diff line number Diff line Loading @@ -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 Loading Loading @@ -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 } Loading mysql-test/r/join_outer.result +2 −0 Original line number Diff line number Diff line Loading @@ -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 mysql-test/r/null.result +7 −0 Original line number Diff line number Diff line Loading @@ -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 mysql-test/t/join_outer.test +10 −0 Original line number Diff line number Diff line Loading @@ -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
Docs/manual.texi +8 −0 Original line number Diff line number Diff line Loading @@ -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
libmysql/libmysql.c +2 −2 Original line number Diff line number Diff line Loading @@ -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 Loading Loading @@ -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 } Loading
mysql-test/r/join_outer.result +2 −0 Original line number Diff line number Diff line Loading @@ -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
mysql-test/r/null.result +7 −0 Original line number Diff line number Diff line Loading @@ -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
mysql-test/t/join_outer.test +10 −0 Original line number Diff line number Diff line Loading @@ -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;