---
title: 主副本存在长事务时，从副本弱读 hung 的问题-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于 主副本存在长事务时，从副本弱读 hung 的问题相关的常见问题和使用技巧，帮助您快速解决 主副本存在长事务时，从副本弱读 hung 的问题的难题。
image: https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*OSPzQ6GUQF4AAAAAQHAAAAgAeiGDAQ/original
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

划线反馈

# 主副本存在长事务时，从副本弱读 hung 的问题

更新时间：2026-05-14 07:41

适用版本： V3.1.x、V3.2.x 内容类型：Troubleshoot  

## 适用版本

OceanBase 数据库 V3.x 版本。

## 问题现象

主副本上存在长事务，对从副本使用弱读的场景，弱读查询 hang 住造成从副本 CPU 使用异常。

## 问题原因

OceanBase 数据库 V3.x 版本对事务日志采用即时写入和同步的策略，即在事务的执行过程中（V2.x 版本为事务提交时）持续地将事务日志落盘和同步。所以在长事务执行过程中，日志会不断同步到从/只读副本。因为弱读的读版本号比部分的“脏”日志的版本号更大，此时在从/只读副本的弱读可以看到这些“脏”数据。

由于事务一直没有结束，弱读无法获取最后的提交版本号，导致当前弱读无法判断是否需要读取该事务的数据，会一直等在这里直到 SQL 超时，报错 -6004（读请求等待事务结束）。当等待事务结束的 SQL 并发较高时，会造成队列积压、租户 CPU 使用异常，最终影响整体业务。

## 解决方法

规避此类使用场景：尽量避免长事务，或者尽量避免在存在长事务时执行从副本弱读。

上一篇

[Queuing 表频繁在线收集统计信息导致相关 SQL 的执行计划频繁重新生成](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000002829542)

下一篇

[如何获取 SQL 的物理执行计划](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000002999340) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
