---
title: 专有云 OCP 中 add server 在运行 IO 校准阶段报错 -4016 的原因和解决方法-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于专有云 OCP 中 add server 在运行 IO 校准阶段报错 -4016 的原因和解决方法相关的常见问题和使用技巧，帮助您快速解决专有云 OCP 中 add server 在运行 IO 校准阶段报错 -4016 的原因和解决方法的难题。
---
切换语言

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

划线反馈

# 专有云 OCP 中 add server 在运行 IO 校准阶段报错 -4016 的原因和解决方法

更新时间：2026-06-08 02:41

适用版本： 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  

## 问题现象

在 OCP 平台上执行 add server 操作时，在 Run io calibration 阶段失败，具体表现为在日志中发现报错，错误代码为 -4016 并且发现 server_id 非常大，大于 4096。

![image](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/knowledge-base/database/cluster-management/3000.observer-failure/20251126in-ocp-private-cloud-adding-server-resulted-error-4016-during-io-calibration-phase.png)

## 关键信息

- 错误日志显示大量的 RPC 请求发送给新加入的节点，错误码为 `OB_TENANT_NOT_IN_SERVER`。
 - 隐藏 sys 租户的创建成功时间晚于发送 RPC 的时间。

## 问题原因

在 OceanBase 数据库 V4.3.5 之前版本指定了 server_id 不能超过 4096 的限制，如果超过就会导致 add server 的时候出现问题。 一次 add_server 就会导致 server_id 被快速推高，主要是因为隐藏的 sys 租户尚未建立完成时尝试将这个机器加入集群。add_server 需要发送 RPC 去到这个要加进集群的机器中来检查这个机器是否为空，但是因为要加入集群的这个机器的隐藏 sys 租户没有建立导致出现 `OB_TENANT_NOT_IN_SERVER` 错误而不断重试，每次 add_server 都会推高了 server_id，最终超过 4096 限制，导致 add server 操作失败。

## 问题的风险及影响

- add server 操作无法成功完成。
 - 新加入的节点可能因为持续的 RPC 请求重试而导致资源浪费。

## 适用版本

OceanBase 数据库 V4.2.1 BP7（oceanbase-4.2.1.7-107000112024052920）之前版本。

## 解决方法

**黑屏方式：**

1. 修改内部表以适应当前环境。

      1. 执行查询语句 `select * from __all_server` ，找到最大的 id（其中 id 为当前除问题机器外最大的 server_id）。
      2. 直连 sys 租户，然后执行更新语句 `update __all_sys_stat set value=xx where name='ob_max_used_server_id';`（这里 value 的值就是上面找到的 id）。

        #### 警告

        更新内部表 `__all_sys_stat` 存在风险，请勿自行操作。如果需要修改，请咨询 OceanBase 技术支持。
 2. 如果问题机器已经进入了 `__all_server` 表，需要使用 `alter system delete server` 将那个问题机器从 `__all_server` 表中删除。
 3. 重新安装并启动机器，等待一段时间再进行 add_server 操作（需要在要加入集群的机器的 OBServer 日志中找到关键字 `success to start weak read service` 就表明隐藏 sys 租户已经建立）。

## 规避方式

1. 确保在执行 add server 操作前，隐藏的 sys 租户已经成功建立。
 2. 升级至问题已修复版本。目前已修复的版本包括 OceanBase 数据库 V4.2.1 BP7（oceanbase-4.2.1.7-107000112024052920）及之后版本，以利用修复后的功能减少 server_id 被不当推高的风险。
 3. 对于完全避免此类问题，建议升级至问题已修复版本。目前已修复的版本包括 OceanBase 数据库 V4.3.5 GA（oceanbase-4.3.5.0-100000122024123020）版本，该版本不再依赖 server_id 进行操作。

上一篇

[更换低电量的主板电池导致 observer 节点无法拉起](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000005434912)

下一篇

[OceanBase 数据库运行过程中手动删除 clog 日志](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000004752881) ![有帮助](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) 咨询热线
