---
title: 磁盘故障导致的合并超时，SQL 执行超时-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于磁盘故障导致的合并超时，SQL 执行超时相关的常见问题和使用技巧，帮助您快速解决磁盘故障导致的合并超时，SQL 执行超时的难题。
---
切换语言

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

划线反馈

# 磁盘故障导致的合并超时，SQL 执行超时

更新时间：2026-06-15 09:16

适用版本： V1.4.x、V2.1.x、V2.2.x、V3.1.x、V3.2.x、V4.0.x、V4.1.x、V4.2.x 内容类型：Troubleshoot  

## 适用版本

OceanBase 数据库所有版本。

## 问题现象

集群合并状态为 Timeout。SQL 执行时报错 `-4012，Timeout`。

用 SQL 的 trace_id 搜索 `observer.log`，发现有 `record_read_failure`、`io fault` 等报错。说明磁盘存在故障。

```
[2022-12-13 09:52:00.177851] WARN  [COMMON] record_read_failure (ob_io_struct.cpp:3045) [142471][0][YB420ABC8F27-0005E6AB9B4852DA-0-0] [lt=14] [dc=0] io fault detector push task failed(ret=-4023, retry_task=0x7ec2a8d38ab0)

[2022-12-13 09:52:00.177927] WARN  [STORAGE] wait (ob_storage_file.cpp:316) [142471][0][YB420ABC8F27-0005E6AB9B4852DA-0-0] [lt=9] [dc=0] fail to handle aio error(ret=-4012, macro_id_=[0-2284681](ver=1,mode=0,seq=2284676), timeout_ms=7199990)

[2022-12-13 09:52:00.177934] WARN  [STORAGE] get_block_data (ob_micro_block_handle_mgr.cpp:76) [142471][0][YB420ABC8F27-0005E6AB9B4852DA-0-0] [lt=6] [dc=0] Fail to wait micro block io, (ret=-4012)

```

## 问题原因

Red Hat Linux 6、7 版本中 XFS 文件系统 bug。

验证方式：dmesg 中有以下信息。

```
XFS: possible memory allocation deadlock in kmem_alloc (mode:0x250)

```

## 解决方法

升级操作系统。

上一篇

[OceanBase 集群合并超时 Timeout 排查方法](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000209921)

下一篇

[异地 Zone5 合并超时，Clog 不断重复 Rebuild 问题分析](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000322511) ![有帮助](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) 咨询热线
