mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merging
mysql-test/r/func_str.result: Auto merged sql/item_geofunc.cc: Auto merged sql/item_strfunc.cc: Auto merged
This commit is contained in:
@ -317,4 +317,5 @@
|
|||||||
#define ER_UNKNOWN_TIME_ZONE 1298
|
#define ER_UNKNOWN_TIME_ZONE 1298
|
||||||
#define ER_WARN_INVALID_TIMESTAMP 1299
|
#define ER_WARN_INVALID_TIMESTAMP 1299
|
||||||
#define ER_INVALID_CHARACTER_STRING 1300
|
#define ER_INVALID_CHARACTER_STRING 1300
|
||||||
#define ER_ERROR_MESSAGES 301
|
#define ER_WARN_ALLOWED_PACKET_OVERFLOWED 1301
|
||||||
|
#define ER_ERROR_MESSAGES 302
|
||||||
|
@ -225,6 +225,8 @@ substring_index("www.tcx.se","",3)
|
|||||||
select length(repeat("a",100000000)),length(repeat("a",1000*64));
|
select length(repeat("a",100000000)),length(repeat("a",1000*64));
|
||||||
length(repeat("a",100000000)) length(repeat("a",1000*64))
|
length(repeat("a",100000000)) length(repeat("a",1000*64))
|
||||||
NULL 64000
|
NULL 64000
|
||||||
|
Warnings:
|
||||||
|
Warning 1300 Data truncated by function 'repeat' do to max_allowed_packet
|
||||||
select position("0" in "baaa" in (1)),position("0" in "1" in (1,2,3)),position("sql" in ("mysql"));
|
select position("0" in "baaa" in (1)),position("0" in "1" in (1,2,3)),position("sql" in ("mysql"));
|
||||||
position("0" in "baaa" in (1)) position("0" in "1" in (1,2,3)) position("sql" in ("mysql"))
|
position("0" in "baaa" in (1)) position("0" in "1" in (1,2,3)) position("sql" in ("mysql"))
|
||||||
1 0 3
|
1 0 3
|
||||||
|
@ -8,6 +8,8 @@ len
|
|||||||
select repeat('a',2000);
|
select repeat('a',2000);
|
||||||
repeat('a',2000)
|
repeat('a',2000)
|
||||||
NULL
|
NULL
|
||||||
|
Warnings:
|
||||||
|
Warning 1300 Data truncated by function 'repeat' do to max_allowed_packet
|
||||||
select @@net_buffer_length, @@max_allowed_packet;
|
select @@net_buffer_length, @@max_allowed_packet;
|
||||||
@@net_buffer_length @@max_allowed_packet
|
@@net_buffer_length @@max_allowed_packet
|
||||||
1024 1024
|
1024 1024
|
||||||
|
@ -446,7 +446,12 @@ String *Item_func_spatial_collection::val_str(String *str)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (str->length() > current_thd->variables.max_allowed_packet)
|
if (str->length() > current_thd->variables.max_allowed_packet)
|
||||||
|
{
|
||||||
|
push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN,
|
||||||
|
ER_WARN_ALLOWED_PACKET_OVERFLOWED,
|
||||||
|
ER(ER_WARN_ALLOWED_PACKET_OVERFLOWED), func_name());
|
||||||
goto err;
|
goto err;
|
||||||
|
}
|
||||||
|
|
||||||
null_value = 0;
|
null_value = 0;
|
||||||
return str;
|
return str;
|
||||||
|
@ -266,7 +266,12 @@ String *Item_func_concat::val_str(String *str)
|
|||||||
continue;
|
continue;
|
||||||
if (res->length()+res2->length() >
|
if (res->length()+res2->length() >
|
||||||
current_thd->variables.max_allowed_packet)
|
current_thd->variables.max_allowed_packet)
|
||||||
goto null; // Error check
|
{
|
||||||
|
push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN,
|
||||||
|
ER_WARN_ALLOWED_PACKET_OVERFLOWED,
|
||||||
|
ER(ER_WARN_ALLOWED_PACKET_OVERFLOWED), func_name());
|
||||||
|
goto null;
|
||||||
|
}
|
||||||
if (res->alloced_length() >= res->length()+res2->length())
|
if (res->alloced_length() >= res->length()+res2->length())
|
||||||
{ // Use old buffer
|
{ // Use old buffer
|
||||||
res->append(*res2);
|
res->append(*res2);
|
||||||
@ -544,7 +549,12 @@ String *Item_func_concat_ws::val_str(String *str)
|
|||||||
|
|
||||||
if (res->length() + sep_str->length() + res2->length() >
|
if (res->length() + sep_str->length() + res2->length() >
|
||||||
current_thd->variables.max_allowed_packet)
|
current_thd->variables.max_allowed_packet)
|
||||||
goto null; // Error check
|
{
|
||||||
|
push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN,
|
||||||
|
ER_WARN_ALLOWED_PACKET_OVERFLOWED,
|
||||||
|
ER(ER_WARN_ALLOWED_PACKET_OVERFLOWED), func_name());
|
||||||
|
goto null;
|
||||||
|
}
|
||||||
if (res->alloced_length() >=
|
if (res->alloced_length() >=
|
||||||
res->length() + sep_str->length() + res2->length())
|
res->length() + sep_str->length() + res2->length())
|
||||||
{ // Use old buffer
|
{ // Use old buffer
|
||||||
@ -801,7 +811,14 @@ redo:
|
|||||||
offset= (int) (ptr-res->ptr());
|
offset= (int) (ptr-res->ptr());
|
||||||
if (res->length()-from_length + to_length >
|
if (res->length()-from_length + to_length >
|
||||||
current_thd->variables.max_allowed_packet)
|
current_thd->variables.max_allowed_packet)
|
||||||
|
{
|
||||||
|
push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN,
|
||||||
|
ER_WARN_ALLOWED_PACKET_OVERFLOWED,
|
||||||
|
ER(ER_WARN_ALLOWED_PACKET_OVERFLOWED),
|
||||||
|
func_name());
|
||||||
|
|
||||||
goto null;
|
goto null;
|
||||||
|
}
|
||||||
if (!alloced)
|
if (!alloced)
|
||||||
{
|
{
|
||||||
alloced=1;
|
alloced=1;
|
||||||
@ -822,7 +839,12 @@ skip:
|
|||||||
{
|
{
|
||||||
if (res->length()-from_length + to_length >
|
if (res->length()-from_length + to_length >
|
||||||
current_thd->variables.max_allowed_packet)
|
current_thd->variables.max_allowed_packet)
|
||||||
|
{
|
||||||
|
push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN,
|
||||||
|
ER_WARN_ALLOWED_PACKET_OVERFLOWED,
|
||||||
|
ER(ER_WARN_ALLOWED_PACKET_OVERFLOWED), func_name());
|
||||||
goto null;
|
goto null;
|
||||||
|
}
|
||||||
if (!alloced)
|
if (!alloced)
|
||||||
{
|
{
|
||||||
alloced=1;
|
alloced=1;
|
||||||
@ -882,7 +904,12 @@ String *Item_func_insert::val_str(String *str)
|
|||||||
length=res->length()-start;
|
length=res->length()-start;
|
||||||
if (res->length() - length + res2->length() >
|
if (res->length() - length + res2->length() >
|
||||||
current_thd->variables.max_allowed_packet)
|
current_thd->variables.max_allowed_packet)
|
||||||
goto null; // OOM check
|
{
|
||||||
|
push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN,
|
||||||
|
ER_WARN_ALLOWED_PACKET_OVERFLOWED,
|
||||||
|
ER(ER_WARN_ALLOWED_PACKET_OVERFLOWED), func_name());
|
||||||
|
goto null;
|
||||||
|
}
|
||||||
res=copy_if_not_alloced(str,res,res->length());
|
res=copy_if_not_alloced(str,res,res->length());
|
||||||
res->replace(start,length,*res2);
|
res->replace(start,length,*res2);
|
||||||
return res;
|
return res;
|
||||||
@ -1934,7 +1961,12 @@ String *Item_func_repeat::val_str(String *str)
|
|||||||
length=res->length();
|
length=res->length();
|
||||||
// Safe length check
|
// Safe length check
|
||||||
if (length > current_thd->variables.max_allowed_packet/count)
|
if (length > current_thd->variables.max_allowed_packet/count)
|
||||||
goto err; // Probably an error
|
{
|
||||||
|
push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN,
|
||||||
|
ER_WARN_ALLOWED_PACKET_OVERFLOWED,
|
||||||
|
ER(ER_WARN_ALLOWED_PACKET_OVERFLOWED), func_name());
|
||||||
|
goto err;
|
||||||
|
}
|
||||||
tot_length= length*(uint) count;
|
tot_length= length*(uint) count;
|
||||||
if (!(res= alloc_buffer(res,str,&tmp_value,tot_length)))
|
if (!(res= alloc_buffer(res,str,&tmp_value,tot_length)))
|
||||||
goto err;
|
goto err;
|
||||||
@ -1999,8 +2031,14 @@ String *Item_func_rpad::val_str(String *str)
|
|||||||
return (res);
|
return (res);
|
||||||
}
|
}
|
||||||
pad_char_length= rpad->numchars();
|
pad_char_length= rpad->numchars();
|
||||||
if ((ulong) byte_count > current_thd->variables.max_allowed_packet ||
|
if ((ulong) byte_count > current_thd->variables.max_allowed_packet)
|
||||||
args[2]->null_value || !pad_char_length)
|
{
|
||||||
|
push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN,
|
||||||
|
ER_WARN_ALLOWED_PACKET_OVERFLOWED,
|
||||||
|
ER(ER_WARN_ALLOWED_PACKET_OVERFLOWED), func_name());
|
||||||
|
goto err;
|
||||||
|
}
|
||||||
|
if(args[2]->null_value || !pad_char_length)
|
||||||
goto err;
|
goto err;
|
||||||
res_byte_length= res->length(); /* Must be done before alloc_buffer */
|
res_byte_length= res->length(); /* Must be done before alloc_buffer */
|
||||||
if (!(res= alloc_buffer(res,str,&tmp_value,byte_count)))
|
if (!(res= alloc_buffer(res,str,&tmp_value,byte_count)))
|
||||||
@ -2079,8 +2117,15 @@ String *Item_func_lpad::val_str(String *str)
|
|||||||
pad_char_length= pad->numchars();
|
pad_char_length= pad->numchars();
|
||||||
byte_count= count * collation.collation->mbmaxlen;
|
byte_count= count * collation.collation->mbmaxlen;
|
||||||
|
|
||||||
if (byte_count > current_thd->variables.max_allowed_packet ||
|
if (byte_count > current_thd->variables.max_allowed_packet)
|
||||||
args[2]->null_value || !pad_char_length || str->alloc(byte_count))
|
{
|
||||||
|
push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN,
|
||||||
|
ER_WARN_ALLOWED_PACKET_OVERFLOWED,
|
||||||
|
ER(ER_WARN_ALLOWED_PACKET_OVERFLOWED), func_name());
|
||||||
|
goto err;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (args[2]->null_value || !pad_char_length || str->alloc(byte_count))
|
||||||
goto err;
|
goto err;
|
||||||
|
|
||||||
str->length(0);
|
str->length(0);
|
||||||
@ -2368,7 +2413,9 @@ String *Item_load_file::val_str(String *str)
|
|||||||
}
|
}
|
||||||
if (stat_info.st_size > (long) current_thd->variables.max_allowed_packet)
|
if (stat_info.st_size > (long) current_thd->variables.max_allowed_packet)
|
||||||
{
|
{
|
||||||
/* my_error(ER_TOO_LONG_STRING, MYF(0), file_name->c_ptr()); */
|
push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_WARN,
|
||||||
|
ER_WARN_ALLOWED_PACKET_OVERFLOWED,
|
||||||
|
ER(ER_WARN_ALLOWED_PACKET_OVERFLOWED), func_name());
|
||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
if (tmp_value.alloc(stat_info.st_size))
|
if (tmp_value.alloc(stat_info.st_size))
|
||||||
|
@ -307,5 +307,4 @@ character-set=latin7
|
|||||||
"Got error %d '%-.100s' from %s",
|
"Got error %d '%-.100s' from %s",
|
||||||
"Got temporary error %d '%-.100s' from %s",
|
"Got temporary error %d '%-.100s' from %s",
|
||||||
"Unknown or incorrect time zone: '%-.64s'",
|
"Unknown or incorrect time zone: '%-.64s'",
|
||||||
"Invalid TIMESTAMP value in column '%s' at row %ld",
|
|
||||||
"Invalid %s character string: '%.64s'",
|
"Invalid %s character string: '%.64s'",
|
||||||
|
Reference in New Issue
Block a user