GBase 8s 如何查看回滚的事务 和对应的SQL

描述:

如何查看当前数据库中是否有事务在回滚, 如果有, 具体是哪条 SQL 在回滚?

解决办法:

方法1: 通过 onstat -u|grep RP; 可以获取相关的 sessionid。 通过 onstat -g ses sid 获取 SQL;

方法2: 通过 onstat -x|grep "A-R"; 可以定位到 userthread, 例如 "686cb9e8", 然后通过

onstat -u|grep "686cb9e8" 获取到 sessionid; onstat -x 输出中的 rb_time 表示回滚的剩余时间。

案例:

描述:gbase在线,在gbase服务器里面能正常访问gbase,但是用工具程序就访问不了,gbase服务是online状态,存储空间也是够的,这是gbase日志

如图

经过上面的分析:长事务到达高水位之后,事务即将挂起,长事务回滚完之后,挂起的事务没断开,也没发起重连,导致gds和应用也连不上,onmode -z sid杀掉挂起的事务,让session重连

相关推荐
雨中飘荡的记忆12 小时前
保证金系统入门到实战
java·后端
Nyarlathotep011313 小时前
Java内存模型
java
IvorySQL13 小时前
PostgreSQL 技术日报 (3月6日)|为什么 Ctrl-C 在 psql 里让人不安?
数据库·postgresql·开源
NineData14 小时前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库
暮色妖娆丶17 小时前
不过是吃了几年互联网红利罢了,我高估了自己
java·后端·面试
NE_STOP17 小时前
MyBatis-参数处理与查询结果映射
java
狂奔小菜鸡18 小时前
Day40 | Java中的ReadWriteLock读写锁
java·后端·java ee
IvorySQL19 小时前
PostgreSQL 技术日报 (3月5日)|规划器控制力升级,内核能力再进阶
数据库·postgresql·开源
SimonKing19 小时前
JetBrains 用户狂喜!这个 AI 插件让 IDE 原地进化成「智能编码助手」
java·后端·程序员