mirror of
https://github.com/MariaDB/server.git
synced 2025-08-05 13:16:09 +03:00
Merge rurik.mysql.com:/home/igor/mysql-5.0
into rurik.mysql.com:/home/igor/dev/mysql-5.0-0
This commit is contained in:
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "rlconf.h"
|
#include "rlconf.h"
|
||||||
|
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
|
30
cmd-line-utils/readline/config_readline.h
Normal file
30
cmd-line-utils/readline/config_readline.h
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
/*
|
||||||
|
config-readline.h Maintained by hand. Contains the readline specific
|
||||||
|
parts from config.h.in in readline 4.3
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if defined (HAVE_CONFIG_H)
|
||||||
|
# include <config.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
Ultrix botches type-ahead when switching from canonical to
|
||||||
|
non-canonical mode, at least through version 4.3
|
||||||
|
*/
|
||||||
|
#if !defined (HAVE_TERMIOS_H) || !defined (HAVE_TCGETATTR) || defined (ultrix)
|
||||||
|
# define TERMIOS_MISSING
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined (STRCOLL_BROKEN)
|
||||||
|
# undef HAVE_STRCOLL
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined (__STDC__) && defined (HAVE_STDARG_H)
|
||||||
|
# define PREFER_STDARG
|
||||||
|
# define USE_VARARGS
|
||||||
|
#else
|
||||||
|
# if defined (HAVE_VARARGS_H)
|
||||||
|
# define PREFER_VARARGS
|
||||||
|
# define USE_VARARGS
|
||||||
|
# endif
|
||||||
|
#endif
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined (BUFSIZ)
|
#if !defined (BUFSIZ)
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
@@ -22,9 +22,7 @@
|
|||||||
|
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
|
@@ -25,9 +25,7 @@
|
|||||||
you can call. I think I have done that. */
|
you can call. I think I have done that. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
|
@@ -25,9 +25,7 @@
|
|||||||
you can call. I think I have done that. */
|
you can call. I think I have done that. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
|
@@ -22,9 +22,7 @@
|
|||||||
|
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#if defined (HAVE_STDLIB_H)
|
#if defined (HAVE_STDLIB_H)
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
|
@@ -26,9 +26,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
|
@@ -20,9 +20,7 @@
|
|||||||
Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined (HAVE_STDLIB_H)
|
#if defined (HAVE_STDLIB_H)
|
||||||
# include <stdlib.h>
|
# include <stdlib.h>
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined (HAVE_UNISTD_H)
|
#if defined (HAVE_UNISTD_H)
|
||||||
# include <unistd.h>
|
# include <unistd.h>
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
|
@@ -23,9 +23,7 @@
|
|||||||
|
|
||||||
#include "rlconf.h"
|
#include "rlconf.h"
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
@@ -22,9 +22,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include "posixstat.h"
|
#include "posixstat.h"
|
||||||
|
@@ -22,9 +22,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
|
@@ -22,9 +22,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
@@ -22,9 +22,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <stdio.h> /* Just for NULL. Yuck. */
|
#include <stdio.h> /* Just for NULL. Yuck. */
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include "posixstat.h"
|
#include "posixstat.h"
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined (HAVE_UNISTD_H)
|
#if defined (HAVE_UNISTD_H)
|
||||||
# include <unistd.h>
|
# include <unistd.h>
|
||||||
|
@@ -19,9 +19,7 @@
|
|||||||
along with Readline; see the file COPYING. If not, write to the Free
|
along with Readline; see the file COPYING. If not, write to the Free
|
||||||
Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined (HAVE_UNISTD_H)
|
#if defined (HAVE_UNISTD_H)
|
||||||
# ifdef _MINIX
|
# ifdef _MINIX
|
||||||
|
@@ -22,9 +22,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
|
@@ -21,9 +21,7 @@
|
|||||||
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
|
@@ -31,9 +31,7 @@
|
|||||||
|
|
||||||
#if defined (VI_MODE)
|
#if defined (VI_MODE)
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
|
@@ -20,9 +20,7 @@
|
|||||||
Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
|
||||||
#define READLINE_LIBRARY
|
#define READLINE_LIBRARY
|
||||||
|
|
||||||
#if defined (HAVE_CONFIG_H)
|
#include "config_readline.h"
|
||||||
#include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
|
16
configure.in
16
configure.in
@@ -451,33 +451,33 @@ PS=$ac_cv_path_PS
|
|||||||
# Linux style
|
# Linux style
|
||||||
if $PS p $$ 2> /dev/null | grep $0 > /dev/null
|
if $PS p $$ 2> /dev/null | grep $0 > /dev/null
|
||||||
then
|
then
|
||||||
FIND_PROC="$PS p \$\$PID | grep mysqld > /dev/null"
|
FIND_PROC="$PS p \$\$PID | grep \$\$MYSQLD > /dev/null"
|
||||||
# Solaris
|
# Solaris
|
||||||
elif $PS -fp $$ 2> /dev/null | grep $0 > /dev/null
|
elif $PS -fp $$ 2> /dev/null | grep $0 > /dev/null
|
||||||
then
|
then
|
||||||
FIND_PROC="$PS -p \$\$PID | grep mysqld > /dev/null"
|
FIND_PROC="$PS -p \$\$PID | grep \$\$MYSQLD > /dev/null"
|
||||||
# BSD style
|
# BSD style
|
||||||
elif $PS -uaxww 2> /dev/null | grep $0 > /dev/null
|
elif $PS -uaxww 2> /dev/null | grep $0 > /dev/null
|
||||||
then
|
then
|
||||||
FIND_PROC="$PS -uaxww | grep mysqld | grep \" \$\$PID \" > /dev/null"
|
FIND_PROC="$PS -uaxww | grep \$\$MYSQLD | grep \" \$\$PID \" > /dev/null"
|
||||||
# SysV style
|
# SysV style
|
||||||
elif $PS -ef 2> /dev/null | grep $0 > /dev/null
|
elif $PS -ef 2> /dev/null | grep $0 > /dev/null
|
||||||
then
|
then
|
||||||
FIND_PROC="$PS -ef | grep mysqld | grep \" \$\$PID \" > /dev/null"
|
FIND_PROC="$PS -ef | grep \$\$MYSQLD | grep \" \$\$PID \" > /dev/null"
|
||||||
# Do anybody use this?
|
# Do anybody use this?
|
||||||
elif $PS $$ 2> /dev/null | grep $0 > /dev/null
|
elif $PS $$ 2> /dev/null | grep $0 > /dev/null
|
||||||
then
|
then
|
||||||
FIND_PROC="$PS \$\$PID | grep mysqld > /dev/null"
|
FIND_PROC="$PS \$\$PID | grep \$\$MYSQLD > /dev/null"
|
||||||
else
|
else
|
||||||
case $SYSTEM_TYPE in
|
case $SYSTEM_TYPE in
|
||||||
*freebsd*)
|
*freebsd*)
|
||||||
FIND_PROC="$PS p \$\$PID | grep mysqld > /dev/null"
|
FIND_PROC="$PS p \$\$PID | grep \$\$MYSQLD > /dev/null"
|
||||||
;;
|
;;
|
||||||
*darwin*)
|
*darwin*)
|
||||||
FIND_PROC="$PS -uaxww | grep mysqld | grep \" \$\$PID \" > /dev/null"
|
FIND_PROC="$PS -uaxww | grep \$\$MYSQLD | grep \" \$\$PID \" > /dev/null"
|
||||||
;;
|
;;
|
||||||
*cygwin*)
|
*cygwin*)
|
||||||
FIND_PROC="$PS -e | grep mysqld | grep \" \$\$PID \" > /dev/null"
|
FIND_PROC="$PS -e | grep \$\$MYSQLD | grep \" \$\$PID \" > /dev/null"
|
||||||
;;
|
;;
|
||||||
*netware*)
|
*netware*)
|
||||||
FIND_PROC=
|
FIND_PROC=
|
||||||
|
@@ -256,12 +256,12 @@ INSERT INTO t2 VALUES (0),(0),(1),(1),(2),(2);
|
|||||||
explain select * from t1, t2 where (t1.key1 <t2.keya + 1) and t2.keya=3;
|
explain select * from t1, t2 where (t1.key1 <t2.keya + 1) and t2.keya=3;
|
||||||
id select_type table type possible_keys key key_len ref rows Extra
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t2 ref j1 j1 4 const 1 Using index
|
1 SIMPLE t2 ref j1 j1 4 const 1 Using index
|
||||||
1 SIMPLE t1 range i1 i1 4 NULL 7 Using where; Using index
|
1 SIMPLE t1 index i1 i1 4 NULL 7 Using where; Using index
|
||||||
explain select * from t1 force index(i1), t2 force index(j1) where
|
explain select * from t1 force index(i1), t2 force index(j1) where
|
||||||
(t1.key1 <t2.keya + 1) and t2.keya=3;
|
(t1.key1 <t2.keya + 1) and t2.keya=3;
|
||||||
id select_type table type possible_keys key key_len ref rows Extra
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t2 ref j1 j1 4 const 1 Using index
|
1 SIMPLE t2 ref j1 j1 4 const 1 Using index
|
||||||
1 SIMPLE t1 range i1 i1 4 NULL 7 Using where; Using index
|
1 SIMPLE t1 index i1 i1 4 NULL 7 Using where; Using index
|
||||||
DROP TABLE t1,t2;
|
DROP TABLE t1,t2;
|
||||||
CREATE TABLE t1 (
|
CREATE TABLE t1 (
|
||||||
a int(11) default NULL,
|
a int(11) default NULL,
|
||||||
|
@@ -457,9 +457,9 @@ ERROR 42S22: Unknown column 'aa' in 'order clause'
|
|||||||
drop procedure bug2653_1|
|
drop procedure bug2653_1|
|
||||||
drop procedure bug2653_2|
|
drop procedure bug2653_2|
|
||||||
create procedure bug4344() drop procedure bug4344|
|
create procedure bug4344() drop procedure bug4344|
|
||||||
ERROR HY000: Can't drop a PROCEDURE from within another stored routine
|
ERROR HY000: Can't drop or alter a PROCEDURE from within another stored routine
|
||||||
create procedure bug4344() drop function bug4344|
|
create procedure bug4344() drop function bug4344|
|
||||||
ERROR HY000: Can't drop a FUNCTION from within another stored routine
|
ERROR HY000: Can't drop or alter a FUNCTION from within another stored routine
|
||||||
drop procedure if exists bug3294|
|
drop procedure if exists bug3294|
|
||||||
create procedure bug3294()
|
create procedure bug3294()
|
||||||
begin
|
begin
|
||||||
@@ -585,4 +585,13 @@ end;
|
|||||||
end;
|
end;
|
||||||
end|
|
end|
|
||||||
drop procedure bug9073|
|
drop procedure bug9073|
|
||||||
|
create procedure bug7047()
|
||||||
|
alter procedure bug7047|
|
||||||
|
ERROR HY000: Can't drop or alter a PROCEDURE from within another stored routine
|
||||||
|
create function bug7047() returns int
|
||||||
|
begin
|
||||||
|
alter function bug7047;
|
||||||
|
return 0;
|
||||||
|
end|
|
||||||
|
ERROR HY000: Can't drop or alter a FUNCTION from within another stored routine
|
||||||
drop table t1|
|
drop table t1|
|
||||||
|
@@ -2958,4 +2958,13 @@ select @x|
|
|||||||
set global query_cache_size = @qcs1|
|
set global query_cache_size = @qcs1|
|
||||||
delete from t1|
|
delete from t1|
|
||||||
drop function bug9902|
|
drop function bug9902|
|
||||||
|
drop procedure if exists bug6898|
|
||||||
|
create procedure bug6898()
|
||||||
|
begin
|
||||||
|
goto label1;
|
||||||
|
label label1;
|
||||||
|
begin end;
|
||||||
|
goto label1;
|
||||||
|
end|
|
||||||
|
drop procedure bug6898|
|
||||||
drop table t1,t2;
|
drop table t1,t2;
|
||||||
|
@@ -226,3 +226,17 @@ select * from t1;
|
|||||||
a b
|
a b
|
||||||
0 2
|
0 2
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
create table t1 (a int, b varchar(10), key b(b(5))) engine=myisam;
|
||||||
|
create table t2 (a int, b varchar(10)) engine=myisam;
|
||||||
|
insert into t1 values ( 1, 'abcd1e');
|
||||||
|
insert into t1 values ( 2, 'abcd2e');
|
||||||
|
insert into t2 values ( 1, 'abcd1e');
|
||||||
|
insert into t2 values ( 2, 'abcd2e');
|
||||||
|
analyze table t1,t2;
|
||||||
|
Table Op Msg_type Msg_text
|
||||||
|
test.t1 analyze status OK
|
||||||
|
test.t2 analyze status OK
|
||||||
|
update t1, t2 set t1.a = t2.a where t2.b = t1.b;
|
||||||
|
show warnings;
|
||||||
|
Level Code Message
|
||||||
|
drop table t1, t2;
|
||||||
|
@@ -817,6 +817,20 @@ end|
|
|||||||
drop procedure bug9073|
|
drop procedure bug9073|
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# BUG#7047: Stored procedure crash if alter procedure
|
||||||
|
#
|
||||||
|
--error ER_SP_NO_DROP_SP
|
||||||
|
create procedure bug7047()
|
||||||
|
alter procedure bug7047|
|
||||||
|
--error ER_SP_NO_DROP_SP
|
||||||
|
create function bug7047() returns int
|
||||||
|
begin
|
||||||
|
alter function bug7047;
|
||||||
|
return 0;
|
||||||
|
end|
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# BUG#NNNN: New bug synopsis
|
# BUG#NNNN: New bug synopsis
|
||||||
#
|
#
|
||||||
|
@@ -3628,6 +3628,22 @@ delete from t1|
|
|||||||
drop function bug9902|
|
drop function bug9902|
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# BUG#6898: Stored procedure crash if GOTO statements exist
|
||||||
|
#
|
||||||
|
--disable_warnings
|
||||||
|
drop procedure if exists bug6898|
|
||||||
|
--enable_warnings
|
||||||
|
create procedure bug6898()
|
||||||
|
begin
|
||||||
|
goto label1;
|
||||||
|
label label1;
|
||||||
|
begin end;
|
||||||
|
goto label1;
|
||||||
|
end|
|
||||||
|
drop procedure bug6898|
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# BUG#NNNN: New bug synopsis
|
# BUG#NNNN: New bug synopsis
|
||||||
#
|
#
|
||||||
|
@@ -189,3 +189,15 @@ insert into t1 values (0, '1');
|
|||||||
update t1 set b = b + 1 where a = 0;
|
update t1 set b = b + 1 where a = 0;
|
||||||
select * from t1;
|
select * from t1;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
|
# BUG#9103 "Erroneous data truncation warnings on multi-table updates"
|
||||||
|
create table t1 (a int, b varchar(10), key b(b(5))) engine=myisam;
|
||||||
|
create table t2 (a int, b varchar(10)) engine=myisam;
|
||||||
|
insert into t1 values ( 1, 'abcd1e');
|
||||||
|
insert into t1 values ( 2, 'abcd2e');
|
||||||
|
insert into t2 values ( 1, 'abcd1e');
|
||||||
|
insert into t2 values ( 2, 'abcd2e');
|
||||||
|
analyze table t1,t2;
|
||||||
|
update t1, t2 set t1.a = t2.a where t2.b = t1.b;
|
||||||
|
show warnings;
|
||||||
|
drop table t1, t2;
|
||||||
|
@@ -2257,7 +2257,8 @@ inline double get_index_only_read_time(const PARAM* param, ha_rows records,
|
|||||||
param->table->file->ref_length) + 1);
|
param->table->file->ref_length) + 1);
|
||||||
read_time=((double) (records+keys_per_block-1)/
|
read_time=((double) (records+keys_per_block-1)/
|
||||||
(double) keys_per_block);
|
(double) keys_per_block);
|
||||||
return read_time;
|
/* Add 0.01 to avoid cost races between 'range' and 'index' */
|
||||||
|
return read_time + 0.01;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -5532,7 +5533,7 @@ QUICK_RANGE_SELECT *get_quick_select_for_ref(THD *thd, TABLE *table,
|
|||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cp_buffer_from_ref(ref) && thd->is_fatal_error ||
|
if (cp_buffer_from_ref(thd,ref) && thd->is_fatal_error ||
|
||||||
!(range= new QUICK_RANGE()))
|
!(range= new QUICK_RANGE()))
|
||||||
goto err; // out of memory
|
goto err; // out of memory
|
||||||
|
|
||||||
@@ -7912,6 +7913,8 @@ int QUICK_GROUP_MIN_MAX_SELECT::reset(void)
|
|||||||
file->extra(HA_EXTRA_KEYREAD); /* We need only the key attributes */
|
file->extra(HA_EXTRA_KEYREAD); /* We need only the key attributes */
|
||||||
result= file->ha_index_init(index);
|
result= file->ha_index_init(index);
|
||||||
result= file->index_last(record);
|
result= file->index_last(record);
|
||||||
|
if (result == HA_ERR_END_OF_FILE)
|
||||||
|
DBUG_RETURN(0);
|
||||||
if (result)
|
if (result)
|
||||||
DBUG_RETURN(result);
|
DBUG_RETURN(result);
|
||||||
if (quick_prefix_select && quick_prefix_select->reset())
|
if (quick_prefix_select && quick_prefix_select->reset())
|
||||||
|
@@ -5213,7 +5213,7 @@ ER_VIEW_INVALID
|
|||||||
eng "View '%-.64s.%-.64s' references invalid table(s) or column(s) or function(s)"
|
eng "View '%-.64s.%-.64s' references invalid table(s) or column(s) or function(s)"
|
||||||
rus "View '%-.64s.%-.64s' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
|
rus "View '%-.64s.%-.64s' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
|
||||||
ER_SP_NO_DROP_SP
|
ER_SP_NO_DROP_SP
|
||||||
eng "Can't drop a %s from within another stored routine"
|
eng "Can't drop or alter a %s from within another stored routine"
|
||||||
ER_SP_GOTO_IN_HNDLR
|
ER_SP_GOTO_IN_HNDLR
|
||||||
eng "GOTO is not allowed in a stored procedure handler"
|
eng "GOTO is not allowed in a stored procedure handler"
|
||||||
ER_TRG_ALREADY_EXISTS
|
ER_TRG_ALREADY_EXISTS
|
||||||
|
@@ -1499,7 +1499,7 @@ sp_instr_jump::opt_shortcut_jump(sp_head *sp, sp_instr *start)
|
|||||||
{
|
{
|
||||||
uint ndest;
|
uint ndest;
|
||||||
|
|
||||||
if (start == i)
|
if (start == i || this == i)
|
||||||
break;
|
break;
|
||||||
ndest= i->opt_shortcut_jump(sp, start);
|
ndest= i->opt_shortcut_jump(sp, start);
|
||||||
if (ndest == dest)
|
if (ndest == dest)
|
||||||
|
@@ -9583,7 +9583,7 @@ join_read_const(JOIN_TAB *tab)
|
|||||||
if (table->status & STATUS_GARBAGE) // If first read
|
if (table->status & STATUS_GARBAGE) // If first read
|
||||||
{
|
{
|
||||||
table->status= 0;
|
table->status= 0;
|
||||||
if (cp_buffer_from_ref(&tab->ref))
|
if (cp_buffer_from_ref(tab->join->thd, &tab->ref))
|
||||||
error=HA_ERR_KEY_NOT_FOUND;
|
error=HA_ERR_KEY_NOT_FOUND;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -9647,7 +9647,7 @@ join_read_always_key(JOIN_TAB *tab)
|
|||||||
|
|
||||||
if (!table->file->inited)
|
if (!table->file->inited)
|
||||||
table->file->ha_index_init(tab->ref.key);
|
table->file->ha_index_init(tab->ref.key);
|
||||||
if (cp_buffer_from_ref(&tab->ref))
|
if (cp_buffer_from_ref(tab->join->thd, &tab->ref))
|
||||||
return -1;
|
return -1;
|
||||||
if ((error=table->file->index_read(table->record[0],
|
if ((error=table->file->index_read(table->record[0],
|
||||||
tab->ref.key_buff,
|
tab->ref.key_buff,
|
||||||
@@ -9674,7 +9674,7 @@ join_read_last_key(JOIN_TAB *tab)
|
|||||||
|
|
||||||
if (!table->file->inited)
|
if (!table->file->inited)
|
||||||
table->file->ha_index_init(tab->ref.key);
|
table->file->ha_index_init(tab->ref.key);
|
||||||
if (cp_buffer_from_ref(&tab->ref))
|
if (cp_buffer_from_ref(tab->join->thd, &tab->ref))
|
||||||
return -1;
|
return -1;
|
||||||
if ((error=table->file->index_read_last(table->record[0],
|
if ((error=table->file->index_read_last(table->record[0],
|
||||||
tab->ref.key_buff,
|
tab->ref.key_buff,
|
||||||
@@ -9848,7 +9848,7 @@ join_ft_read_first(JOIN_TAB *tab)
|
|||||||
if (!table->file->inited)
|
if (!table->file->inited)
|
||||||
table->file->ha_index_init(tab->ref.key);
|
table->file->ha_index_init(tab->ref.key);
|
||||||
#if NOT_USED_YET
|
#if NOT_USED_YET
|
||||||
if (cp_buffer_from_ref(&tab->ref)) // as ft-key doesn't use store_key's
|
if (cp_buffer_from_ref(tab->join->thd, &tab->ref)) // as ft-key doesn't use store_key's
|
||||||
return -1; // see also FT_SELECT::init()
|
return -1; // see also FT_SELECT::init()
|
||||||
#endif
|
#endif
|
||||||
table->file->ft_init();
|
table->file->ft_init();
|
||||||
@@ -11609,7 +11609,8 @@ cmp_buffer_with_ref(JOIN_TAB *tab)
|
|||||||
{
|
{
|
||||||
memcpy(tab->ref.key_buff2, tab->ref.key_buff, tab->ref.key_length);
|
memcpy(tab->ref.key_buff2, tab->ref.key_buff, tab->ref.key_length);
|
||||||
}
|
}
|
||||||
if ((tab->ref.key_err=cp_buffer_from_ref(&tab->ref)) || diff)
|
if ((tab->ref.key_err= cp_buffer_from_ref(tab->join->thd, &tab->ref)) ||
|
||||||
|
diff)
|
||||||
return 1;
|
return 1;
|
||||||
return memcmp(tab->ref.key_buff2, tab->ref.key_buff, tab->ref.key_length)
|
return memcmp(tab->ref.key_buff2, tab->ref.key_buff, tab->ref.key_length)
|
||||||
!= 0;
|
!= 0;
|
||||||
@@ -11617,11 +11618,17 @@ cmp_buffer_with_ref(JOIN_TAB *tab)
|
|||||||
|
|
||||||
|
|
||||||
bool
|
bool
|
||||||
cp_buffer_from_ref(TABLE_REF *ref)
|
cp_buffer_from_ref(THD *thd, TABLE_REF *ref)
|
||||||
{
|
{
|
||||||
|
enum enum_check_fields save_count_cuted_fields= thd->count_cuted_fields;
|
||||||
|
thd->count_cuted_fields= CHECK_FIELD_IGNORE;
|
||||||
for (store_key **copy=ref->key_copy ; *copy ; copy++)
|
for (store_key **copy=ref->key_copy ; *copy ; copy++)
|
||||||
if ((*copy)->copy())
|
if ((*copy)->copy())
|
||||||
|
{
|
||||||
|
thd->count_cuted_fields= save_count_cuted_fields;
|
||||||
return 1; // Something went wrong
|
return 1; // Something went wrong
|
||||||
|
}
|
||||||
|
thd->count_cuted_fields= save_count_cuted_fields;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -520,7 +520,7 @@ public:
|
|||||||
const char *name() const { return "const"; }
|
const char *name() const { return "const"; }
|
||||||
};
|
};
|
||||||
|
|
||||||
bool cp_buffer_from_ref(TABLE_REF *ref);
|
bool cp_buffer_from_ref(THD *thd, TABLE_REF *ref);
|
||||||
bool error_if_full_join(JOIN *join);
|
bool error_if_full_join(JOIN *join);
|
||||||
int report_error(TABLE *table, int error);
|
int report_error(TABLE *table, int error);
|
||||||
int safe_index_read(JOIN_TAB *tab);
|
int safe_index_read(JOIN_TAB *tab);
|
||||||
|
@@ -3305,6 +3305,11 @@ alter:
|
|||||||
{
|
{
|
||||||
LEX *lex= Lex;
|
LEX *lex= Lex;
|
||||||
|
|
||||||
|
if (lex->sphead)
|
||||||
|
{
|
||||||
|
my_error(ER_SP_NO_DROP_SP, MYF(0), "PROCEDURE");
|
||||||
|
YYABORT;
|
||||||
|
}
|
||||||
bzero((char *)&lex->sp_chistics, sizeof(st_sp_chistics));
|
bzero((char *)&lex->sp_chistics, sizeof(st_sp_chistics));
|
||||||
}
|
}
|
||||||
sp_a_chistics
|
sp_a_chistics
|
||||||
@@ -3318,6 +3323,11 @@ alter:
|
|||||||
{
|
{
|
||||||
LEX *lex= Lex;
|
LEX *lex= Lex;
|
||||||
|
|
||||||
|
if (lex->sphead)
|
||||||
|
{
|
||||||
|
my_error(ER_SP_NO_DROP_SP, MYF(0), "FUNCTION");
|
||||||
|
YYABORT;
|
||||||
|
}
|
||||||
bzero((char *)&lex->sp_chistics, sizeof(st_sp_chistics));
|
bzero((char *)&lex->sp_chistics, sizeof(st_sp_chistics));
|
||||||
}
|
}
|
||||||
sp_a_chistics
|
sp_a_chistics
|
||||||
|
Reference in New Issue
Block a user