Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
5bff13bc
Commit
5bff13bc
authored
Jul 21, 2004
by
hf@deer.(none)
Browse files
Options
Browse Files
Download
Plain Diff
Merging
parents
84d9b862
eb67909b
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
67 additions
and
11 deletions
+67
-11
include/mysqld_error.h
include/mysqld_error.h
+2
-1
mysql-test/r/func_str.result
mysql-test/r/func_str.result
+2
-0
mysql-test/r/packet.result
mysql-test/r/packet.result
+2
-0
sql/item_geofunc.cc
sql/item_geofunc.cc
+5
-0
sql/item_strfunc.cc
sql/item_strfunc.cc
+56
-9
sql/share/estonian/errmsg.txt
sql/share/estonian/errmsg.txt
+0
-1
No files found.
include/mysqld_error.h
View file @
5bff13bc
...
@@ -317,4 +317,5 @@
...
@@ -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
mysql-test/r/func_str.result
View file @
5bff13bc
...
@@ -225,6 +225,8 @@ substring_index("www.tcx.se","",3)
...
@@ -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
...
...
mysql-test/r/packet.result
View file @
5bff13bc
...
@@ -8,6 +8,8 @@ len
...
@@ -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
...
...
sql/item_geofunc.cc
View file @
5bff13bc
...
@@ -446,7 +446,12 @@ String *Item_func_spatial_collection::val_str(String *str)
...
@@ -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
;
...
...
sql/item_strfunc.cc
View file @
5bff13bc
...
@@ -266,7 +266,12 @@ String *Item_func_concat::val_str(String *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)
...
@@ -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:
...
@@ -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:
...
@@ -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)
...
@@ -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)
...
@@ -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)
...
@@ -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)
...
@@ -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)
...
@@ -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
))
...
...
sql/share/estonian/errmsg.txt
View file @
5bff13bc
...
@@ -307,5 +307,4 @@ character-set=latin7
...
@@ -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'",
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment