问题现象
在大量写入的场景下对于虚拟表 __all_virtual_memstore_info 对应的分区访问会 core 在 b tree 的虚拟表访问上。
关键诊断信息
触发条件
大量写入的场景下访问虚拟表 __all_virtual_memstore_info 的分区。
问题原因
虚拟表访问过程中没有过滤 place holder(0x1)。
问题的风险及影响
在大量写入的场景下对于虚拟表 __all_virtual_memstore_info 访问会 core。
影响租户
影响 OceanBase 数据库中的 Oracle 租户和 MySQL 租户,对于 SYS 租户无影响。
影响的版本
OceanBase 数据库 V3.1.2 GA(oceanbase-3.1.2-20210618150922)及之后版本、V3.2.3 GA(oceanbase-3.2.3.0-20220418212020)及之后版本。
解决方法
升级至问题已修复版本。目前已修复的版本包括 OceanBase 数据库 V3.1.2 BP10(oceanbase-3.1.2-110000022022092714)及之后版本、V3.2.3 BP6 Hotfix1(oceanbase-3.2.3.3-106010052022120116)、V3.2.3 BP6 Hotfix2(oceanbase-3.2.3.3-106020042022120915)、V3.2.3 BP6 Hotfix3(oceanbase-3.2.3.3-106030012022121311)、V3.2.3 BP6 Hotfix4(oceanbase-3.2.3.3-106040022022122222)、V3.2.3 BP6 Hotfix5(oceanbase-3.2.3.3-106050012023051617)、V3.2.3 BP7(oceanbase-3.2.3.3-107000092023011911)及之后版本。
减少虚拟表
__all_virtual_memstore_info的访问。
规避方式
减少虚拟表 __all_virtual_memstore_info 的访问。