本文介绍在一些场景下,表 __all_virtual_table 和表 __all_virtual_meta_table 数据不一致的原因。
两张内部表的含义如下。
__all_virtual_table:保存所有表和索引表的基础信息。__all_virtual_meta_table:保存包含 sys 租户之外的所有租户的分区表和全局索引(不包含本地索引)的位置信息。
注意
sys 租户的位置信息在 __all_root_table 中。
__all_virtual_meta_table 的部分字段更新有延迟,某些延迟删除的动作也不会立刻更新,需要合并才更新。一般合并后大概 20~30 分钟更新,也可能会延长,更新实际主要由后台异步线程执行。
当 create 一张表后,查询表
__all_virtual_table或者表__all_virtual_meta_table都可以查询到。当 drop 这张表后,
__all_virtual_table则立刻生效;而__all_virtual_meta_table里依然存在这张表。
适用版本
OceanBase 数据库 V2.x、V3.x 版本。