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
43f7cd01
Commit
43f7cd01
authored
Nov 30, 2009
by
Satya B
Browse files
Options
Browse Files
Download
Plain Diff
merge to mysql-5.1-bugteam
parents
3606e59c
732e5a26
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
65 additions
and
2 deletions
+65
-2
mysql-test/r/innodb_mysql.result
mysql-test/r/innodb_mysql.result
+31
-0
mysql-test/t/innodb_mysql.test
mysql-test/t/innodb_mysql.test
+26
-0
sql/handler.cc
sql/handler.cc
+8
-2
No files found.
mysql-test/r/innodb_mysql.result
View file @
43f7cd01
...
...
@@ -2273,4 +2273,35 @@ END|
DROP PROCEDURE p1;
DROP VIEW v1;
DROP TABLE t1,t2;
#
# Bug #20837 Apparent change of isolation
# level during transaction
#
SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
CREATE TABLE t1 (s1 INT) ENGINE=InnoDB;
INSERT INTO t1 VALUES (1),(2);
COMMIT;
SET @@autocommit = 0;
COMMIT;
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
START TRANSACTION;
SELECT * FROM t1;
s1
1
2
Should be READ UNCOMMITTED
SELECT @@tx_isolation;
@@tx_isolation
READ-UNCOMMITTED
INSERT INTO t1 VALUES (-1);
Should be READ UNCOMMITTED
SELECT @@tx_isolation;
@@tx_isolation
READ-UNCOMMITTED
COMMIT;
Should now be REPEATABLE READ
SELECT @@tx_isolation;
@@tx_isolation
REPEATABLE-READ
DROP TABLE t1;
End of 5.1 tests
mysql-test/t/innodb_mysql.test
View file @
43f7cd01
...
...
@@ -536,4 +536,30 @@ DROP PROCEDURE p1;
DROP
VIEW
v1
;
DROP
TABLE
t1
,
t2
;
--
echo
#
--
echo
# Bug #20837 Apparent change of isolation
--
echo
# level during transaction
--
echo
#
SET
SESSION
TRANSACTION
ISOLATION
LEVEL
REPEATABLE
READ
;
CREATE
TABLE
t1
(
s1
INT
)
ENGINE
=
InnoDB
;
INSERT
INTO
t1
VALUES
(
1
),(
2
);
COMMIT
;
SET
@@
autocommit
=
0
;
COMMIT
;
SET
TRANSACTION
ISOLATION
LEVEL
READ
UNCOMMITTED
;
START
TRANSACTION
;
SELECT
*
FROM
t1
;
--
echo
Should
be
READ
UNCOMMITTED
SELECT
@@
tx_isolation
;
INSERT
INTO
t1
VALUES
(
-
1
);
--
echo
Should
be
READ
UNCOMMITTED
SELECT
@@
tx_isolation
;
COMMIT
;
--
echo
Should
now
be
REPEATABLE
READ
SELECT
@@
tx_isolation
;
DROP
TABLE
t1
;
--
echo
End
of
5.1
tests
sql/handler.cc
View file @
43f7cd01
...
...
@@ -1369,8 +1369,14 @@ int ha_autocommit_or_rollback(THD *thd, int error)
if
(
thd
->
transaction_rollback_request
&&
!
thd
->
in_sub_stmt
)
(
void
)
ha_rollback
(
thd
);
}
thd
->
variables
.
tx_isolation
=
thd
->
session_tx_isolation
;
}
else
if
(
!
(
thd
->
options
&
(
OPTION_NOT_AUTOCOMMIT
|
OPTION_BEGIN
)))
{
/*
If we're in autocommit mode, reset tx_isolation
to the default value
*/
thd
->
variables
.
tx_isolation
=
thd
->
session_tx_isolation
;
}
#endif
DBUG_RETURN
(
error
);
...
...
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