版本:latest

PG_STAT_VECTOR_BUFFER_HASH_CHAIN ​

PG_STAT_VECTOR_BUFFER_HASH_CHAIN 显示当前实例中可读取的向量缓存池哈希链分布及扩容进度。普通用户可以查询;缓存未启用或没有可读取的缓存池哈希信息时返回空集。

名称类型描述
vbp_idinteger缓存池内部标识。
generationinteger缓存池代次。
live_entriesinteger缓存池当前有效缓存条目数。
bucket_countinteger本次扫描的活动哈希表桶数。
n0integer观测链长为 0 的桶数。
n1integer观测链长为 1 的桶数。
n2integer观测链长为 2 的桶数。
n3integer观测链长为 3 的桶数。
n_ge4integer观测链长大于或等于 4 的桶数。
max_chaininteger本次扫描观测到的最大链长。
chained_nodesinteger本次扫描观测到的链节点总数。
truncatedinteger链遍历达到扫描上限而提前终止的桶数。
rehashingboolean是否正在进行哈希表扩容迁移。
migrated_bucketsinteger扩容期间已迁移的桶数,非扩容状态为 0。
candidate_bucket_countinteger扩容目标哈希表的桶数,非扩容状态为 0。

该视图不为全表获取一致性快照。扩容期间仅扫描当前活动表,已迁移的桶可能不再包含原链,因此 chained_nodes 可能小于 live_entries;应等待 rehashing = false 后再分析链长分布。truncated 非零时,也不应把观测链长视为完整结果。

sql
openGauss=# SELECT vbp_id, bucket_count, n0, n1, n2, n3, n_ge4,
                    max_chain, truncated, rehashing, migrated_buckets
             FROM pg_stat_vector_buffer_hash_chain ORDER BY vbp_id;

该视图会遍历哈希桶和链,宜用于按需诊断,避免高频轮询。它对应无输入参数的集合返回函数 pg_stat_get_vector_buffer_hash_chain(),函数返回字段与视图一致。使用方法请参见使用向量专用缓存。