OCP响应时间异常

【 使用环境 】生产环境
【 OB or 其他组件 】OCP
【 使用版本 】
c5d0abb690828f2b75b43981417e7c04

【问题描述】
这个性能监控的响应时间最高打到1.85 day 看起来不太正常。
1、和SQL执行时间对不上,SQL执行时间最高是10多分钟,不存在1.85天的事务和SQL语句。
2、当前时间段内也没异常慢的update 语句,可以看到slow sql 里最高的是select 语句,业务反馈昨天一天都没有执行update语句,就今天下午执行的。且SQL事务超时时间是86400000000 ,不可能存在1.85day 的update 语句。

麻烦确认下释放OCP响应时间计算缺陷问题。

【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):

【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)

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

2 个赞

麻烦确认下是否 OCP响应时间计算缺陷问题。

1 个赞

业务OB集群是什么版本

show variables like '%version_comment%';
1 个赞

4.2.5.1

1 个赞

没查到已知缺陷,我反馈下这个问题,可能需要协助定位

1 个赞

好的,没问题。

1 个赞

麻烦取下包含这个异常响应时间的 ocp-server.log

1 个赞

ocp_log.zip (26.9 MB)

1 个赞

日志看到存在大量的监控采集失败,麻烦到对应的ocp_agent主机执行下下面的命令,看看返回的数据量情况,然后取下对应主机的monagent.log

sudo curl -s --unix-socket /home/admin/ocp_agent/run/ocp_monagent.$(cat /home/admin/ocp_agent/run/ocp_monagent.pid).sock http://unix-socket-server/metrics/ob/basic | wc -l

2 个赞

好的,稍等。

1 个赞

结果 8954

1 个赞

感觉问题不在监控收集上

目前看到耗时很多超过了2s,可以先把ocp这边监控采集的超时时间调整一下看下
ocp_meta租户下meta_database

update config_properties set `value` = '{"second_connect_timeout":1000,"second_read_timeout":2000,"second_request_timeout":3000,"minute_connect_timeout":10000,"minute_read_timeout":30000,"minute_request_timeout":40000}' where `key` = 'ocp.monitor.collect.request.timeout'

我看到log里面有很多Error log,OCP在很多机器上进行时钟同步检查时遇到了问题,这个可能会导致导致OCP无法完成一致性校验
2025-07-03 14:27:11.989 ERROR 36068 — [host-check-clockdiff16,5790da9f848c43ed,91274583bd4ef892] c.o.ocp.core.util.ExceptionUtils : Checked Exception: com.oceanbase.ocp.core.exception.UnexpectedException occurred with code error.common.unexpected, and args [Execute clock diff failed., 10.174.207.13]
2025-07-03 14:27:11.989 WARN 36068 — [host-check-clockdiff16,5790da9f848c43ed,91274583bd4ef892] c.o.o.c.h.manager.HostCheckManagerImpl : Check host clock diff fail. hostId=1000062, ip=10.174.207.13, exception={}

com.oceanbase.ocp.core.exception.UnexpectedException: [OCP UnexpectedException]: status=500 INTERNAL_SERVER_ERROR, errorCode=COMMON_UNEXPECTED, args=Execute clock diff failed.,10.174.207.13
at sun.reflect.GeneratedConstructorAccessor610.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.oceanbase.ocp.core.util.ExceptionUtils.newException(ExceptionUtils.java:96)
at com.oceanbase.ocp.core.util.ExceptionUtils.throwException(ExceptionUtils.java:90)
at com.oceanbase.ocp.core.util.ExceptionUtils.unExpected(ExceptionUtils.java:77)
at com.oceanbase.ocp.compute.host.manager.HostCheckManagerImpl.doCheckHostClockDiff(HostCheckManagerImpl.java:355)
at com.oceanbase.ocp.compute.host.manager.HostCheckManagerImpl.checkHostClockDiff(HostCheckManagerImpl.java:342)
at com.oceanbase.ocp.core.task.engine.util.DistributedExclusiveExecutor.lambda$doExecute$0(DistributedExclusiveExecutor.java:73)
at com.oceanbase.ocp.common.trace.TraceDecorator.lambda$decorate$0(TraceDecorator.java:33)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

你可以先看下你集群环境中各个节点的机器时间是一样的吗?

系统bug吧