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
a85613f6
Commit
a85613f6
authored
Mar 11, 2005
by
serg@serg.mylan
Browse files
Options
Browse Files
Download
Plain Diff
Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
parents
7486a5be
7b19170c
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
32 additions
and
17 deletions
+32
-17
mysql-test/r/innodb.result
mysql-test/r/innodb.result
+7
-1
mysql-test/t/innodb.test
mysql-test/t/innodb.test
+10
-1
sql/ha_ndbcluster.cc
sql/ha_ndbcluster.cc
+1
-1
sql/sql_parse.cc
sql/sql_parse.cc
+14
-14
No files found.
mysql-test/r/innodb.result
View file @
a85613f6
...
@@ -262,7 +262,11 @@ n
...
@@ -262,7 +262,11 @@ n
5
5
6
6
7
7
rollback to savepoint `savept2`;
savepoint savept3;
rollback to savepoint savept2;
rollback to savepoint savept3;
ERROR 42000: SAVEPOINT savept3 does not exist
rollback to savepoint savept2;
release savepoint `my_savepoint`;
release savepoint `my_savepoint`;
select n from t1;
select n from t1;
n
n
...
@@ -272,6 +276,8 @@ n
...
@@ -272,6 +276,8 @@ n
7
7
rollback to savepoint `my_savepoint`;
rollback to savepoint `my_savepoint`;
ERROR 42000: SAVEPOINT my_savepoint does not exist
ERROR 42000: SAVEPOINT my_savepoint does not exist
rollback to savepoint savept2;
ERROR 42000: SAVEPOINT savept2 does not exist
insert into t1 values (8);
insert into t1 values (8);
savepoint sv;
savepoint sv;
commit;
commit;
...
...
mysql-test/t/innodb.test
View file @
a85613f6
...
@@ -130,17 +130,26 @@ insert into t1 values (6);
...
@@ -130,17 +130,26 @@ insert into t1 values (6);
insert
into
t1
values
(
4
);
insert
into
t1
values
(
4
);
select
n
from
t1
;
select
n
from
t1
;
set
autocommit
=
0
;
set
autocommit
=
0
;
#
# savepoints
#
begin
;
begin
;
savepoint
`my_savepoint`
;
savepoint
`my_savepoint`
;
insert
into
t1
values
(
7
);
insert
into
t1
values
(
7
);
savepoint
`savept2`
;
savepoint
`savept2`
;
insert
into
t1
values
(
3
);
insert
into
t1
values
(
3
);
select
n
from
t1
;
select
n
from
t1
;
rollback
to
savepoint
`savept2`
;
savepoint
savept3
;
rollback
to
savepoint
savept2
;
--
error
1305
rollback
to
savepoint
savept3
;
rollback
to
savepoint
savept2
;
release
savepoint
`my_savepoint`
;
release
savepoint
`my_savepoint`
;
select
n
from
t1
;
select
n
from
t1
;
--
error
1305
--
error
1305
rollback
to
savepoint
`my_savepoint`
;
rollback
to
savepoint
`my_savepoint`
;
--
error
1305
rollback
to
savepoint
savept2
;
insert
into
t1
values
(
8
);
insert
into
t1
values
(
8
);
savepoint
sv
;
savepoint
sv
;
commit
;
commit
;
...
...
sql/ha_ndbcluster.cc
View file @
a85613f6
sql/sql_parse.cc
View file @
a85613f6
...
@@ -355,7 +355,7 @@ int check_user(THD *thd, enum enum_server_command command,
...
@@ -355,7 +355,7 @@ int check_user(THD *thd, enum enum_server_command command,
if
(
check_count
)
if
(
check_count
)
{
{
VOID
(
pthread_mutex_lock
(
&
LOCK_thread_count
));
VOID
(
pthread_mutex_lock
(
&
LOCK_thread_count
));
bool
count_ok
=
thread_count
<
max_connections
+
delayed_insert_threads
bool
count_ok
=
thread_count
<
=
max_connections
+
delayed_insert_threads
||
(
thd
->
master_access
&
SUPER_ACL
);
||
(
thd
->
master_access
&
SUPER_ACL
);
VOID
(
pthread_mutex_unlock
(
&
LOCK_thread_count
));
VOID
(
pthread_mutex_unlock
(
&
LOCK_thread_count
));
if
(
!
count_ok
)
if
(
!
count_ok
)
...
@@ -3805,21 +3805,21 @@ unsent_create_error:
...
@@ -3805,21 +3805,21 @@ unsent_create_error:
break
;
break
;
case
SQLCOM_RELEASE_SAVEPOINT
:
case
SQLCOM_RELEASE_SAVEPOINT
:
{
{
SAVEPOINT
*
*
sv
;
SAVEPOINT
*
sv
;
for
(
sv
=
&
thd
->
transaction
.
savepoints
;
*
sv
;
sv
=&
(
*
sv
)
->
prev
)
for
(
sv
=
thd
->
transaction
.
savepoints
;
sv
;
sv
=
sv
->
prev
)
{
{
if
(
my_strnncoll
(
system_charset_info
,
if
(
my_strnncoll
(
system_charset_info
,
(
uchar
*
)
lex
->
ident
.
str
,
lex
->
ident
.
length
,
(
uchar
*
)
lex
->
ident
.
str
,
lex
->
ident
.
length
,
(
uchar
*
)
(
*
sv
)
->
name
,
(
*
sv
)
->
length
)
==
0
)
(
uchar
*
)
sv
->
name
,
sv
->
length
)
==
0
)
break
;
break
;
}
}
if
(
*
sv
)
if
(
sv
)
{
{
if
(
ha_release_savepoint
(
thd
,
*
sv
))
if
(
ha_release_savepoint
(
thd
,
sv
))
res
=
TRUE
;
// cannot happen
res
=
TRUE
;
// cannot happen
else
else
send_ok
(
thd
);
send_ok
(
thd
);
*
sv
=
(
*
sv
)
->
prev
;
thd
->
transaction
.
savepoints
=
sv
->
prev
;
}
}
else
else
my_error
(
ER_SP_DOES_NOT_EXIST
,
MYF
(
0
),
"SAVEPOINT"
,
lex
->
ident
.
str
);
my_error
(
ER_SP_DOES_NOT_EXIST
,
MYF
(
0
),
"SAVEPOINT"
,
lex
->
ident
.
str
);
...
@@ -3827,17 +3827,17 @@ unsent_create_error:
...
@@ -3827,17 +3827,17 @@ unsent_create_error:
}
}
case
SQLCOM_ROLLBACK_TO_SAVEPOINT
:
case
SQLCOM_ROLLBACK_TO_SAVEPOINT
:
{
{
SAVEPOINT
*
*
sv
;
SAVEPOINT
*
sv
;
for
(
sv
=
&
thd
->
transaction
.
savepoints
;
*
sv
;
sv
=&
(
*
sv
)
->
prev
)
for
(
sv
=
thd
->
transaction
.
savepoints
;
sv
;
sv
=
sv
->
prev
)
{
{
if
(
my_strnncoll
(
system_charset_info
,
if
(
my_strnncoll
(
system_charset_info
,
(
uchar
*
)
lex
->
ident
.
str
,
lex
->
ident
.
length
,
(
uchar
*
)
lex
->
ident
.
str
,
lex
->
ident
.
length
,
(
uchar
*
)
(
*
sv
)
->
name
,
(
*
sv
)
->
length
)
==
0
)
(
uchar
*
)
sv
->
name
,
sv
->
length
)
==
0
)
break
;
break
;
}
}
if
(
*
sv
)
if
(
sv
)
{
{
if
(
ha_rollback_to_savepoint
(
thd
,
*
sv
))
if
(
ha_rollback_to_savepoint
(
thd
,
sv
))
res
=
TRUE
;
// cannot happen
res
=
TRUE
;
// cannot happen
else
else
{
{
...
@@ -3848,7 +3848,7 @@ unsent_create_error:
...
@@ -3848,7 +3848,7 @@ unsent_create_error:
ER
(
ER_WARNING_NOT_COMPLETE_ROLLBACK
));
ER
(
ER_WARNING_NOT_COMPLETE_ROLLBACK
));
send_ok
(
thd
);
send_ok
(
thd
);
}
}
*
sv
=
(
*
sv
)
->
pre
v
;
thd
->
transaction
.
savepoints
=
s
v
;
}
}
else
else
my_error
(
ER_SP_DOES_NOT_EXIST
,
MYF
(
0
),
"SAVEPOINT"
,
lex
->
ident
.
str
);
my_error
(
ER_SP_DOES_NOT_EXIST
,
MYF
(
0
),
"SAVEPOINT"
,
lex
->
ident
.
str
);
...
...
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