---
title: OB_EXCEED_MEM_LIMIT 错误码 4080 产生原因-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于 OB_EXCEED_MEM_LIMIT 错误码 4080 产生原因相关的常见问题和使用技巧，帮助您快速解决 OB_EXCEED_MEM_LIMIT 错误码 4080 产生原因的难题。
---
切换语言

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

划线反馈

# OB_EXCEED_MEM_LIMIT 错误码 4080 产生原因

更新时间：2024-01-16 11:56

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

## 问题描述

OceanBase 数据库 `observer.log` 报错 (OCP 也会告警) 信息如下。

```shell
ERROR [SQL.ENG] interrupt_qc (ob_px_interruption.cpp:184) [xxxxx][xxxxx][xxxxx-xxxxx] [lt=9] [dc=0] fail send interrupt signal to qc(addr="xxx.xxx.xxx.xxx:xxxx", int_code={code:-4080, info:{msg:"tid:xxxxx,from:"xxx.xxx.xxx.xxx:xxxx",TASK ABORT QC"}}, orig_int_code={code:-4080, info:{msg:"tid:xxxxx,from:"xxx.xxx.xxx.xxxx:xxxx",TASK ABORT QC"}}, ret=-4080) BACKTRACE:0xa1ff028 0xa1e34d9 0x2c2f3c1 0x2c51685 0x2ce73a4 0x890934e 0x890bab2 0x897fec9 0x89807a3 0x8977d3b 0x892d1a9 0x892e520 0x8933ebb 0x891b4a4 0x891cb75 0x2909506 0x2907313 0x2902524 0x748e2ea 0x32649a7 0xa010676 0xa00d95f 0xa008f8e
WARN  [RPC.FRAME] easy_session_create_respect_memory_limit (ob_req_transport.cpp:165) [xxxxx][xxxxx][xxxxx-xxxxx] [lt=11] [dc=0] easy exceed memory limit, dest server has too many pending request, maybe dest server slow or unreachable(dest="xxx.xxx.xxx.xxx:xxxx", stat->size=5795287552, stat->count=5, easy_server_memory_limit=4294967296)

```

## 适用版本

OceanBase 数据库 V2.x 和 V3.x 版本。

## 问题原因

OceanBase 数据库在进行批量导数据的业务, 此时并发请求数量达到上万, 平均每个请求 `rpc` 包大小为几百兆, 批量导数据时请求数据大小超过了 OBServer 的 `rpc packet` 网络传输内存上限参数 `__easy_memory_limit` 默认值 4G 的限制, 导致目标服务器有太多待处理请求，可能目标服务器速度慢或无法访问。

## 解决方法

- 业务上采用分批导数据的方式来减少并发请求数量，每批数据大小不超过 OBServer 的 `rpc packet` 网络传输内存上限参数 `__easy_memory_limit` 的一半，以保证每个请求的大小不超过限制。
 - 根据具体请求数据大小调整 OBServer 的 `rpc packet` 网络传输内存上限参数 `__easy_memory_limit` 的值，参考如下命令。

  ```shell
  [admin@hostname oceanbase]$./bin/observer -i eth0 -p 2881 -P 2882 -n test2 -z zone1 -d /home/admin/oceanbase/store/test2 -l info -o'rootservice_list=xx.xx.xx.xx:2882:2881,\
  config_additional_dir=/data/1/test2/etc2,/data/1/test2/etc3,cluster_id=11,stack_size=1M,__easy_memory_limit=6G,\
  cpu_count=16,\
  workers_per_cpu_quota=10'

  ```
 - 使用负载均衡器来分摊请求，避免过多的请求压力集中在单个服务器上。
 - 调整目标服务器的配置，增加内存、调整网络带宽等，以提升目标服务器的处理能力。

上一篇

[空闲链接超时导致的应用周期性断链问题](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000225636)

下一篇

[与服务器的连接断开，错误代码 ERROR 2013](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000217848) ![有帮助](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) 咨询热线
