---
title: 转储失败与内存无法释放问题排查指南-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于 转储失败与内存无法释放问题排查指南相关的常见问题和使用技巧，帮助您快速解决 转储失败与内存无法释放问题排查指南的难题。
---
切换语言

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

划线反馈

# 转储失败与内存无法释放问题排查指南

更新时间：2024-07-03 10:11

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

在 OceanBase 数据库系统中，转储（compaction）是当 MemTable 的大小超过一定阈值时，就需要将 MemTable 中的数据转存到 SSTable 中以释放内存的过程。有时候，转储失败可能导致内存无法按预期释放，从而影响系统性能。

本文档提供了一种方法来排查和诊断转储失败和内存无法释放的问题。

## 诊断冻结与转储失败

在数据库操作中，首先需要确定问题是冻结（freeze）操作失败还是转储（dump/flush）操作失败。

- 冻结失败

如果 MemTable 没有发生冻结，可能是事务日志处理中出现了问题。在这种情况下，需要联系负责技术支持人员进行问题诊断。

- 转储失败

如果 MemTable 已经冻结，但是内存没有得到释放，可能是转储操作没有成功完成。这可能是因为内存中的数据没有正确写入磁盘。

## 排查已冻结的 MemTable 是否已转储

如果 MemTable 已经冻结，下一步是确认这个 MemTable 是否已经成功转储。以下是用于排查的 SQL 查询：

- OceanBase 数据库 V4.x 之前版本

  ```sql
  select * from __all_virtual_table_mgr where svr_ip = "xxx" and svr_port = xxx and table_id = xxx and table_type=0 and is_active = 0 and snapshot_version > (select max(snapshot_version) from __all_virtual_table_mgr where svr_ip = "xxx" and svr_port = xxx and table_id = xxx and (table_type = 7 or table_type = 4)));

  ```
 - OceanBase 数据库 V4.x 版本

  ```sql
  select* from __all_virtual_table_mgr where svr_ip = "xxx" and svr_port = xxx and tenant_id=xx and tablet_id = xx and table_type = 0 and is_active='NO' and end_log_scn > (select MAX(end_log_scn) from __all_virtual_table_mgr where svr_ip = "xxx" and svr_port = xxx and tenant_id=xx and tablet_id = xx and (table_type = 11 or table_type = 12));

  ```

如果查询结果返回了行条目，则表示存在已冻结的 MemTable ，这意味着有 MemTable 已经转储了但未得到正确释放。

## 如果 MemTable 未转储

如果已确认 MemTable 未转储，需要进一步排查原因。可以通过查找日志中转储失败的迹象来进行排查：

```shell
grep "dag_ret:-" observer.log.xxxx* | vi -

```

在上述命令的结果中，搜索是否有无法转储 partition 的 table_id。

## 适用版本

OceanBase 数据库所有版本。

上一篇

[OceanBase 数据库 V4.x 版本中负载均衡在进行磁盘均衡时的逻辑](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000002999344)

下一篇

[OceanBase 数据库 V4.2.1 BP2 版本因断电导致 OBServer 无法正常重启问题的分析和处理](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000005908627) ![有帮助](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) 咨询热线
