为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM8
【操作系统】:
【CPU】:
【问题描述】*:我有一张表叫device_info,以下是sql:
update
device_info
set real_datas='[{"code": "instantaneous_flow", "name": "瞬时流量", "t_code": "llj001", "t_name": "瞬时流量", "value": "0"}, {"code": "positive_flow", "name": "累计流量", "t_code": "llj002", "t_name": "累计流量", "value": "0.0"}, {"code": "receive_time", "name": "接收时间", "t_code": "jssj", "t_name": "接收时间", "value": "2024-11-27 06:14:33"}]',
data_time='2024-11-27 06:14:33'
where id='e5a76b2955f64c2d8ed2c2b925cfb2ff'
我这个sql是读取mq队列拿到数据后执行的更新操作,后续并发量比较高,现在在调试阶段,发现过程更新一会后这个sql就卡住不动了,通过查看[-6407] 锁超时也没发现该表,
REAL_DATAS TEXT
DATA_TIME VARCHAR
请问一下这是什么原因?是我数据库配置不对呢?还是哪里出了问题?
语句执行不动时查询有无阻塞,
select * from v$trxwait; --单机
select * from v$dsc_trxwait; --DSC集群
是不是有锁表或者有事务变更没提交?
update的时候,执行
select * from v$sessions where thrd_id in(select thrd_id from v$trxwait)
看看是不是有阻塞?