oceabase server errcode 4000

【 使用环境 】生产环境
【 OB or 其他组件 】
【 使用版本 】
【问题描述】
一直打印这个日志[2024-10-10 19:56:14.972457] WDIAG [SERVER] runTimerTask (ob_server.cpp:3669) [13031][ServerGTimer][T0][Y0-0000000000000000-0-0] [lt=47][errcode=-4000] ObRefreshNetworkSpeedTask reload bandwidth throttle limit failed(ret=-4000, ret=“OB_ERROR”)
【复现路径】
【附件及日志】

【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!

用户问题: “OceanBase 服务器出现错误码 4000,如何解决?”

推荐使用 obdiag 工具进行日志采集,并且将采集到的日志提供给我们以便确认问题所在。

日志采集场景: SQL 执行出错
日志采集命令: obdiag gather scene run --scene=observer.sql_err --env “{db_connect=’-h127.0.0.1 -P2881 -utest@test -p****** -Dtest’, trace_id=‘Yxx’}”

请替换上述命令中的 db_connect 参数为您实际的数据库连接参数,并将 trace_id 替换为出现问题时的 trace ID。该命令会帮助我们收集与 SQL 执行出错相关的日志信息。

麻烦您提供一些信息以便我们更好地帮助您:

  1. 您能否提供触发错误的具体 SQL 语句?
  2. 出现错误时是否有特定的操作或环境背景?
  3. 错误发生时是否还有其他伴随的错误信息或警告?
  4. 您是否尝试过根据文档片段中提供的案例进行排查?如果有,请分享您的排查过程和结果。

检索到的文档如下:

  1. 0001 ~ 3999
  2. 4000 ~ 4499

附上敏捷诊断工具 obdiag 使用帮助链接

看日志像是网卡限速的日志,网络带宽这块你们有测过吗?

tc qdisc show 

另外推荐用obdiag 工具分析下日志,把日志分析的结果发出来。obdiag 2.4.0版本,文档:
https://www.oceanbase.com/docs/common-obdiag-cn-1000000001326845

1 个赞

tc qdisc show

qdisc noqueue 0: dev lo root refcnt 2
qdisc fq_codel 0: dev ens33 root refcnt 2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn

您提供的信息显示了当前系统中流量控制(Traffic Control,简称 tc)的队列状况。tc qdisc show 命令用于展示网络设备上的队列管理器(qdisc)的状态。从您的输出中可以看到:

  1. lo 接口: 显示为 qdisc noqueue 0: dev lo root refcnt 2,这表明本地回环接口(loopback interface)没有配置任何队列调度器。
  2. ens33 接口: 显示为 qdisc fq_codel 0: dev ens33 root refcnt 2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn,这表明 ens33 接口使用了 fq_codel 调度器,它是一种公平队列结合控制延迟的调度算法,旨在减少延迟和丢包。

然而,您提供的信息与 OceanBase 数据库的错误码 4000 并无直接关联。错误码 4000 在 OceanBase 中被定义为一个通用错误码,具体原因需要进一步排查。建议您检查与 OceanBase 相关的日志文件,特别是与网络带宽限制相关的部分,因为错误信息中提到 ObRefreshNetworkSpeedTask reload bandwidth throttle limit failed

如果您怀疑网络配置影响了 OceanBase 的运行,可以考虑以下几点:

  • 确认 ens33 接口是否是 OceanBase 服务器使用的网络接口。
  • 检查是否有其他网络限制或防火墙规则影响了 OceanBase 的正常通信。
  • 查看是否有其他网络管理工具或策略对带宽进行了限制。

如果以上措施仍不能解决问题,建议联系 OceanBase 的技术支持团队,他们可以提供更深入的技术支持。同时,您可以提供更多关于错误发生的上下文信息,比如执行了哪些操作之后出现了这个错误,以及是否有其他相关的日志信息。

更多信息请查看:

  1. obcdc 配置项说明
  2. (可选)配置 limits.conf
  3. 设置 Server 级配置

(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)

看一下有get_network_speed_from_sysfs,runTimerTask告警,一般这种都是网络限制。
把网卡限速打开 看看

你好,集群版本是多少
目前该报错还存在么