System View for Inspecting DSM Registry Allocations in PostgreSQL
10 months ago
- #Shared Memory
- #PostgreSQL
- #DSM Registry
- PostgreSQL中的动态共享内存(DSM)注册表允许扩展和核心组件通过字符串名称分配动态共享内存
- PostgreSQL 17最初通过GetNamedDSMSegment支持DSM段分配
- 新变体GetNamedDSA()和GetNamedDSHash()简化了在DSM注册表中分配动态共享区域(DSA)和动态共享哈希表(dshash)的过程
- 新的系统视图pg_dsm_registry_allocations提供了对DSM注册表中跟踪的共享内存分配的可见性
- 该视图包含分配名称、类型(段/区域/哈希)等详细信息,以及字节大小(针对段分配)
- test_dsm_registry模块作为这些功能的使用示例
- 新的分配辅助函数和系统视图都将在PostgreSQL 19(预计2026年秋季)中提供
- 如果需要,在PostgreSQL 19发布前可以修改补丁用于本地构建