summaryrefslogtreecommitdiff
path: root/mysql-test/t/bdb.test
diff options
context:
space:
mode:
authorunknown <jimw@mysql.com>2005-11-02 16:38:23 -0800
committerunknown <jimw@mysql.com>2005-11-02 16:38:23 -0800
commitd68354d56703a236e20ea4af1d3a835aa39f1941 (patch)
tree48faba508485cecf3aa4a28ffb873ad3e7a82a51 /mysql-test/t/bdb.test
parent2b35ab1245c713cf482dc8534cffc5246d9dde16 (diff)
downloadmariadb-git-d68354d56703a236e20ea4af1d3a835aa39f1941.tar.gz
Fix handling of "SET TRANSACTION ISOLATION LEVEL ...". (Bug #7955)
mysql-test/r/bdb.result: Add results mysql-test/t/bdb.test: Add new test sql/set_var.cc: Refuse attempts to change tx_isolation while a transaction is in progress. sql/set_var.h: Support check function for sys_var_thd_enum sql/share/errmsg.txt: Add new error message sql/sql_yacc.yy: Make sure that lex->option_type always gets set in 'SET TRANSACTION ...'
Diffstat (limited to 'mysql-test/t/bdb.test')
-rw-r--r--mysql-test/t/bdb.test21
1 files changed, 21 insertions, 0 deletions
diff --git a/mysql-test/t/bdb.test b/mysql-test/t/bdb.test
index 3167682f816..2a987e8e7a6 100644
--- a/mysql-test/t/bdb.test
+++ b/mysql-test/t/bdb.test
@@ -973,3 +973,24 @@ drop table t1;
# End varchar test
eval set storage_engine=$default;
+
+#
+# Bug #7955: SET TRANSACTION ISIOLATION LEVEL lives longer than next
+# transaciton
+#
+create table t1 (a int) engine=bdb;
+set session transaction isolation level repeatable read;
+set transaction isolation level serializable;
+begin;
+select @@tx_isolation;
+insert into t1 values (1);
+--error ER_CANT_CHANGE_TX_ISOLATION
+set transaction isolation level read committed;
+rollback;
+begin;
+select @@tx_isolation;
+insert into t1 values (1);
+rollback;
+drop table t1;
+
+# End of 5.0 tests