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
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
e0a2455f
Commit
e0a2455f
authored
Mar 28, 2006
by
pem@mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge mysql.com:/extern/mysql/bk/mysql-5.0-runtime
into mysql.com:/extern/mysql/5.0/bug17015/mysql-5.0-runtime
parents
71defb7a
e51adff0
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
37 additions
and
6 deletions
+37
-6
mysql-test/r/sp-error.result
mysql-test/r/sp-error.result
+10
-2
mysql-test/t/sp-error.test
mysql-test/t/sp-error.test
+16
-3
sql/field.h
sql/field.h
+6
-0
sql/sp.cc
sql/sp.cc
+5
-1
No files found.
mysql-test/r/sp-error.result
View file @
e0a2455f
...
...
@@ -634,10 +634,18 @@ flush tables;
return 5;
end|
ERROR 0A000: FLUSH is not allowed in stored function or trigger
create procedure bug9529_901234567890123456789012345678901234567890123456789012345
67890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123
()
create procedure bug9529_901234567890123456789012345678901234567890123456789012345()
begin
end|
ERROR 42000: Identifier name 'bug9529_90123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890' is too long
ERROR 42000: Identifier name 'bug9529_901234567890123456789012345678901234567890123456789012345' is too long
drop procedure if exists bug17015_0123456789012345678901234567890123456789012345678901234|
create procedure bug17015_0123456789012345678901234567890123456789012345678901234()
begin
end|
show procedure status like 'bug17015%'|
Db Name Type Definer Modified Created Security_type Comment
test bug17015_0123456789012345678901234567890123456789012345678901234 PROCEDURE root@localhost 0000-00-00 00:00:00 0000-00-00 00:00:00 DEFINER
drop procedure bug17015_0123456789012345678901234567890123456789012345678901234|
drop procedure if exists bug10969|
create procedure bug10969()
begin
...
...
mysql-test/t/sp-error.test
View file @
e0a2455f
...
...
@@ -904,12 +904,26 @@ end|
#
# BUG#9529: Stored Procedures: No Warning on truncation of procedure name
# during creation.
# Note: When using utf8 for mysql.proc, this limit is much higher than before
# BUG#17015: Routine name truncation not an error
# When we started using utf8 for mysql.proc, this limit appeared
# to be higher, but in reality the names were truncated.
--
error
ER_TOO_LONG_IDENT
create
procedure
bug9529_901234567890123456789012345678901234567890123456789012345
67890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123
()
create
procedure
bug9529_901234567890123456789012345678901234567890123456789012345
()
begin
end
|
--
disable_warnings
drop
procedure
if
exists
bug17015_0123456789012345678901234567890123456789012345678901234
|
--
enable_warnings
# Check the upper limit, just to make sure.
create
procedure
bug17015_0123456789012345678901234567890123456789012345678901234
()
begin
end
|
--
replace_column
5
'0000-00-00 00:00:00'
6
'0000-00-00 00:00:00'
show
procedure
status
like
'bug17015%'
|
drop
procedure
bug17015_0123456789012345678901234567890123456789012345678901234
|
#
# BUG#10969: Stored procedures: crash if default() function
...
...
@@ -1699,4 +1713,3 @@ create aggregate function bug16896() returns int return 1;
#drop procedure if exists bugNNNN|
#--enable_warnings
#create procedure bugNNNN...
sql/field.h
View file @
e0a2455f
...
...
@@ -320,6 +320,12 @@ class Field
/* convert decimal to longlong with overflow check */
longlong
convert_decimal2longlong
(
const
my_decimal
*
val
,
bool
unsigned_flag
,
int
*
err
);
/* The max. number of characters */
inline
uint32
Field
::
char_length
()
const
{
return
field_length
/
charset
()
->
mbmaxlen
;
}
friend
bool
reopen_table
(
THD
*
,
struct
st_table
*
,
bool
);
friend
int
cre_myisam
(
my_string
name
,
register
TABLE
*
form
,
uint
options
,
ulonglong
auto_increment_value
);
...
...
sql/sp.cc
View file @
e0a2455f
...
...
@@ -534,7 +534,11 @@ db_create_routine(THD *thd, int type, sp_head *sp)
ret
=
SP_GET_FIELD_FAILED
;
goto
done
;
}
if
(
sp
->
m_name
.
length
>
table
->
field
[
MYSQL_PROC_FIELD_NAME
]
->
field_length
)
if
(
system_charset_info
->
cset
->
numchars
(
system_charset_info
,
sp
->
m_name
.
str
,
sp
->
m_name
.
str
+
sp
->
m_name
.
length
)
>
table
->
field
[
MYSQL_PROC_FIELD_NAME
]
->
char_length
())
{
ret
=
SP_BAD_IDENTIFIER
;
goto
done
;
...
...
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