You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CnosDB 2.3.4:usage_schema与show vnode的vnodeid数量不一致,vnode69缺失

CnosDB 2.3.4中vnode在show vnode中不可见的排查方案

问题场景

查询usage_schema.vnode_disk_storage表得到:

usage_schema ❯ select * from vnode_disk_storage where tenant = 'Tenant25Suborg23' order by time desc limit 20;
+-------------------------------+----------+---------------------+------------------+----------+----------+
| time                          | database | node_id             | tenant           | vnode_id | value    |
+-------------------------------+----------+---------------------+------------------+----------+----------+
| 2024-02-23T03:09:05.153940748 | demoset  | 1704972876971357965 | Tenant25Suborg23 | 78       | 0        |
| 2024-02-23T03:09:05.153940398 | demoset  | 1704972876971357965 | Tenant25Suborg23 | 69       | 0        |
| 2024-02-23T03:09:05.153940028 | demoset  | 1704972876971357965 | Tenant25Suborg23 | 66       | 13294250 |

执行show vnode仅返回:

public ❯ show vnode;
+----------+---------------------+-----------+--------------------+---------------+------------------+---------------------+---------------------+---------+
| VNODE_ID | NODE_ID             | BUCKET_ID | REPLICATION_SET_ID | DATABASE_NAME | TENANT_NAME      | START_TIME          | END_TIME            | STATUS  |
+----------+---------------------+-----------+--------------------+---------------+------------------+---------------------+---------------------+---------+
| 66       | 1704972876971357965 | 64        | 65                 | demoset       | Tenant25Suborg23 | 1705536000000000000 | 1708128000000000000 | Running |
| 78       | 1704972876971357965 | 76        | 77                 | demoset       | Tenant25Suborg23 | 1708128000000000000 | 1710720000000000000 | Running |
+----------+---------------------+-----------+--------------------+---------------+------------------+---------------------+---------------------+---------+

vnode 69在vnode_disk_storage中存在,但show vnode无法查到,可按以下方向排查:

可能原因与解决步骤

  • 历史监控数据残留
    usage_schema下的监控表会保留历史数据,即使vnode已被销毁,历史记录仍会留存。而show vnode仅返回当前活跃的vnode。执行以下查询确认vnode 69的真实状态:

    SELECT * FROM system_schema.vnodes WHERE vnode_id = 69;
    

    若查询无结果,说明vnode 69已被回收,vnode_disk_storage中的记录是历史监控数据。

  • 权限限制
    当前执行show vnode的用户可能无该vnode的查看权限。切换至租户管理员账号重试,或检查当前用户权限:

    SHOW GRANTS FOR CURRENT_USER;
    
  • 元数据不一致
    集群元数据可能出现同步异常,执行元数据修复命令后重新查询:

    ADMIN REPAIR METADATA;
    
  • vnode处于非活跃状态
    show vnode默认仅展示Running状态的vnode,查询全量vnode状态确认:

    SELECT * FROM system_schema.vnodes WHERE tenant_name = 'Tenant25Suborg23';
    

    若vnode 69的status为Terminated或Deleted,则不会出现在show vnode结果中。

内容的提问来源于stack exchange,提问作者learn_more

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 17:26:02