查看 OBProxy 日志,发现存在partition location cache refresh failed缓存刷新失败告警,且集群内其中一台 OB 数据节点近期做过重启操作
4 个赞
登录 proxysys 租户,手动执行reload location_cache强制刷新缓存,试试。
1 个赞
在使用 OceanBase 数据库(简称 OB)时,遇到 partition location cache refresh failed 这样的日志告警通常意味着数据库的元数据信息未能及时更新,这可能是由于各种原因导致的,例如节点故障、网络问题或配置错误等。可以尝试通过“检查节点状态”、“ 查看相关日志”、“ 刷新元数据缓存”、“ 检查配置和参数”等。
1 个赞
66
需要确认一下什么版本,考虑重新同步一下数据呢!
ocp上的告警信息,可以发一下 ocp-server.log日志 再发一下obproxy.log日志
分析与解答
根据您的描述,OceanBase 集群在查询本地执行计划时遇到了 obproxy 路由分发异常的问题,并且 OBProxy 日志中存在 “partition location cache refresh failed” 的缓存刷新失败告警。同时,集群内其中一台 OB 数据节点近期进行了重启操作。
根据文档片段 1 提供的信息,可以分析如下:
-
OBProxy 缓存刷新失败:
- 当 OBProxy 发现分区位置缓存刷新失败时,可能是由于 OBServer 节点的重启导致了 Location Cache 没有及时更新。
- 这种情况下,OBProxy 可能仍然使用的是旧的缓存信息,导致路由分发异常。
-
OBServer 节点重启:
- 重启 OBServer 节点后,可能会导致部分分区的 Leader 发生变化。
- 如果 OBProxy 或者 OBServer 维护的 Location Cache 没有及时更新,就会出现缓存刷新失败的情况。
-
解决方案:
- 检查 OBProxy 日志:查看 OBProxy 的日志,确认是否有其他相关的错误信息。
- 手动刷新缓存:可以通过手动触发缓存刷新来解决这个问题。例如,可以在 OBProxy 上执行一些简单的查询,以促使 OBProxy 更新其缓存。
- 等待自动刷新:如果问题不是特别紧急,可以等待一段时间,让 OBProxy 自动刷新缓存。
- 检查 OBServer 状态:确保所有 OBServer 节点都正常运行,并且没有其他异常情况。
-
参考文档:
通过以上步骤,您可以尝试解决 OBProxy 路由分发异常的问题。如果问题仍然存在,建议进一步检查 OBProxy 和 OBServer 的配置和状态,或者联系 OceanBase 的技术支持团队获取更多帮助。
详情请参考: