mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Merge bk-internal:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
This commit is contained in:
@ -28,6 +28,11 @@
|
|||||||
#include <my_sys.h>
|
#include <my_sys.h>
|
||||||
#include <m_string.h>
|
#include <m_string.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
|
||||||
|
#ifndef EOVERFLOW
|
||||||
|
#define EOVERFLOW 84
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef MSDOS
|
#ifdef MSDOS
|
||||||
#include <share.h> /* Neaded for sopen() */
|
#include <share.h> /* Neaded for sopen() */
|
||||||
#endif
|
#endif
|
||||||
|
@ -407,12 +407,12 @@ select @a, @b;
|
|||||||
@a @b
|
@a @b
|
||||||
2 1
|
2 1
|
||||||
set @@global.global.key_buffer_size= 1;
|
set @@global.global.key_buffer_size= 1;
|
||||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use
|
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'key_buffer_size= 1' at line 1
|
||||||
set GLOBAL global.key_buffer_size= 1;
|
set GLOBAL global.key_buffer_size= 1;
|
||||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use
|
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'key_buffer_size= 1' at line 1
|
||||||
SELECT @@global.global.key_buffer_size;
|
SELECT @@global.global.key_buffer_size;
|
||||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use
|
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'key_buffer_size' at line 1
|
||||||
SELECT @@global.session.key_buffer_size;
|
SELECT @@global.session.key_buffer_size;
|
||||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use
|
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'key_buffer_size' at line 1
|
||||||
SELECT @@global.local.key_buffer_size;
|
SELECT @@global.local.key_buffer_size;
|
||||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use
|
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'key_buffer_size' at line 1
|
||||||
|
@ -289,13 +289,13 @@ select @a, @b;
|
|||||||
#
|
#
|
||||||
# Bug#2586:Disallow global/session/local as structured var. instance names
|
# Bug#2586:Disallow global/session/local as structured var. instance names
|
||||||
#
|
#
|
||||||
--error 1149
|
--error 1064
|
||||||
set @@global.global.key_buffer_size= 1;
|
set @@global.global.key_buffer_size= 1;
|
||||||
--error 1149
|
--error 1064
|
||||||
set GLOBAL global.key_buffer_size= 1;
|
set GLOBAL global.key_buffer_size= 1;
|
||||||
--error 1149
|
--error 1064
|
||||||
SELECT @@global.global.key_buffer_size;
|
SELECT @@global.global.key_buffer_size;
|
||||||
--error 1149
|
--error 1064
|
||||||
SELECT @@global.session.key_buffer_size;
|
SELECT @@global.session.key_buffer_size;
|
||||||
--error 1149
|
--error 1064
|
||||||
SELECT @@global.local.key_buffer_size;
|
SELECT @@global.local.key_buffer_size;
|
||||||
|
@ -107,7 +107,7 @@ bool test_if_int(const char *str, int length, const char *int_end,
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef NOT_USED
|
||||||
static bool test_if_real(const char *str,int length, CHARSET_INFO *cs)
|
static bool test_if_real(const char *str,int length, CHARSET_INFO *cs)
|
||||||
{
|
{
|
||||||
cs= system_charset_info; // QQ move test_if_real into CHARSET_INFO struct
|
cs= system_charset_info; // QQ move test_if_real into CHARSET_INFO struct
|
||||||
@ -159,7 +159,7 @@ static bool test_if_real(const char *str,int length, CHARSET_INFO *cs)
|
|||||||
}
|
}
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static inline uint field_length_without_space(const char *ptr, uint length)
|
static inline uint field_length_without_space(const char *ptr, uint length)
|
||||||
{
|
{
|
||||||
@ -2273,7 +2273,7 @@ int Field_float::store(const char *from,uint len,CHARSET_INFO *cs)
|
|||||||
int err;
|
int err;
|
||||||
char *end;
|
char *end;
|
||||||
double nr= my_strntod(cs,(char*) from,len,&end,&err);
|
double nr= my_strntod(cs,(char*) from,len,&end,&err);
|
||||||
if (!err && (!current_thd->count_cuted_fields || end-from==len))
|
if (!err && (!current_thd->count_cuted_fields || end-from==(int)len))
|
||||||
{
|
{
|
||||||
return Field_float::store(nr);
|
return Field_float::store(nr);
|
||||||
}
|
}
|
||||||
@ -2571,7 +2571,7 @@ int Field_double::store(const char *from,uint len,CHARSET_INFO *cs)
|
|||||||
int err;
|
int err;
|
||||||
char *end;
|
char *end;
|
||||||
double nr= my_strntod(cs,(char*) from,len,&end,&err);
|
double nr= my_strntod(cs,(char*) from,len,&end,&err);
|
||||||
if (!err && (!current_thd->count_cuted_fields || end-from==len))
|
if (!err && (!current_thd->count_cuted_fields || end-from==(int)len))
|
||||||
{
|
{
|
||||||
return Field_double::store(nr);
|
return Field_double::store(nr);
|
||||||
}
|
}
|
||||||
|
@ -2967,12 +2967,6 @@ Item *get_system_var(THD *thd, enum_var_type var_type, LEX_STRING name,
|
|||||||
(uint) strlen(server_version),
|
(uint) strlen(server_version),
|
||||||
system_charset_info);
|
system_charset_info);
|
||||||
|
|
||||||
if (name.str && component.str && check_reserved_words(&name))
|
|
||||||
{
|
|
||||||
net_printf(thd, ER_SYNTAX_ERROR);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
Item *item;
|
Item *item;
|
||||||
sys_var *var;
|
sys_var *var;
|
||||||
char buff[MAX_SYS_VAR_LENGTH*2+4+8], *pos;
|
char buff[MAX_SYS_VAR_LENGTH*2+4+8], *pos;
|
||||||
|
@ -2524,6 +2524,12 @@ simple_expr:
|
|||||||
}
|
}
|
||||||
| '@' '@' opt_var_ident_type ident_or_text opt_component
|
| '@' '@' opt_var_ident_type ident_or_text opt_component
|
||||||
{
|
{
|
||||||
|
|
||||||
|
if ($4.str && $5.str && check_reserved_words(&$4))
|
||||||
|
{
|
||||||
|
yyerror(ER(ER_SYNTAX_ERROR));
|
||||||
|
YYABORT;
|
||||||
|
}
|
||||||
if (!($$= get_system_var(YYTHD, (enum_var_type) $3, $4, $5)))
|
if (!($$= get_system_var(YYTHD, (enum_var_type) $3, $4, $5)))
|
||||||
YYABORT;
|
YYABORT;
|
||||||
}
|
}
|
||||||
@ -5041,7 +5047,7 @@ internal_variable_name:
|
|||||||
{
|
{
|
||||||
if (check_reserved_words(&$1))
|
if (check_reserved_words(&$1))
|
||||||
{
|
{
|
||||||
net_printf(YYTHD, ER_SYNTAX_ERROR);
|
yyerror(ER(ER_SYNTAX_ERROR));
|
||||||
YYABORT;
|
YYABORT;
|
||||||
}
|
}
|
||||||
sys_var *tmp=find_sys_var($3.str, $3.length);
|
sys_var *tmp=find_sys_var($3.str, $3.length);
|
||||||
|
@ -29,10 +29,6 @@
|
|||||||
#include "my_base.h" /* Includes errno.h */
|
#include "my_base.h" /* Includes errno.h */
|
||||||
#include "m_ctype.h"
|
#include "m_ctype.h"
|
||||||
|
|
||||||
#ifndef EOVERFLOW
|
|
||||||
#define EOVERFLOW 84
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static double scaler10[] = {
|
static double scaler10[] = {
|
||||||
1.0, 1e10, 1e20, 1e30, 1e40, 1e50, 1e60, 1e70, 1e80, 1e90
|
1.0, 1e10, 1e20, 1e30, 1e40, 1e50, 1e60, 1e70, 1e80, 1e90
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user