oceanbase 4.1表锁问题

【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】
【 使用版本 】
【问题描述】清晰明确描述问题
【复现路径】问题出现前后相关操作
【问题现象及影响】

【附件】
oceanbase4.1添加了表锁,表锁的类型和MySQL 是完全一致性吗?
如果上面有表锁 应该怎么排查谁持有的表锁,有相关的视图 或者命令吗

有一个视图,可以查锁,名称可以查一下文档

锁表相关可以参考文档
https://www.oceanbase.com/docs/common-oceanbase-database-cn-10000000001701192

这种是显示的锁表,我想看的是比如 update 一张表,然后这边truncate table 会被卡住。这时候的锁

是想看这时候锁是谁持有的吗

是的,就是这种。隐式锁

可以通过show processlist;来查看当前执行的所有SQL语句的PID和TID

视图 CDB_OB_DEADLOCK_EVENT_HISTORY 记录了所有发生过的死锁事件以及参与这些事件的事务,并注明了在一个死锁事件中哪个事务最终被 kill 掉。

https://www.oceanbase.com/docs/common-oceanbase-database-cn-10000000001701155 这个文档有介绍

我理解文章显示是行锁的范畴,据我所知 4.1已经支持表锁了

你好,咨询了开发老师,表锁目前只做了 Oracle 的兼容,MySQL 租户上暂时没有表锁的相关操作和实现。表锁的持有情况和类型等信息可以查虚拟表 __all_virtual_obj_lock。