设置事务隔离级别失败,但show variables之后却成功

【 TiDB 使用环境】
在k8s上使用tidb-operator部署TiDB,版本5.7.25-TiDB-v5.2.1

【概述】

想要把k8s里面的hive的元数据库接入TiDB,需要设置 SET TRANSACTION ISOLATION LEVEL SERIALIZABLE ; 报错,在 show variables之后成功。

操作步骤:

1.首先设置 SET GLOBAL tidb_skip_isolation_level_check=1;
2. 再次设置SET TRANSACTION ISOLATION LEVEL SERIALIZABLE ;此时报错org.jkiss.dbeaver.model.sql.DBSQLException: SQL 错误 [8048] [HY000]: The isolation level ‘SERIALIZABLE’ is not supported. Set tidb_skip_isolation_level_check=1 to skip this error
3.执行 show variables like ‘tidb_skip_isolation_level_check’;
4.再次设置SET TRANSACTION ISOLATION LEVEL SERIALIZABLE ;成功。
操作环境:DBeaver 21.1.3.202107181810
此时不确认线上Hive的元数据迁入TiDB后,是否正常,就没有继续执行。

tidb 不支持这个隔离级别。。。。

建议你将隔离级别修改回来后,在查阅数据是否正常写入,能否正常读取…

具体可以参考这个问题
https://docs.pingcap.com/zh/tidb/stable/transaction-isolation-levels

1 个赞

我是根据这篇文章https://asktug.com/t/topic/153499,进行的测试

在历次更新的版本中,还没找到这个修复的发布…
你要用新版本的,估计还要等待
或者你自己测试来确认了

2 个赞

确实没注意到这一点,:sweat_smile:

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。