Redrock Postgres 搜索 英文
版本: 13 / 14 / 15 / 16 / 17

52.26. pg_shmem_allocations #

视图 pg_shmem_allocations 中显示了从服务器主要共享内存段分配的内存。此内存包括由 PostgreSQL 本身分配的内存和使用 第 36.10.10 节 中详细说明的机制由扩展分配的内存。

请注意,此视图不包括使用动态共享内存基础架构分配的内存。

表 52.26. pg_shmem_allocations

列类型

描述

name text

共享内存分配的名称。未使用的内存为 NULL,匿名分配为 <anonymous>

off int8

分配起始位置的偏移量。匿名分配为 NULL,因为不知道它们的相关详细信息。

size int8

以字节为单位的分配大小

allocated_size int8

以字节为单位的分配大小(包括填充)。对于匿名分配,没有填充相关的信息,因此 sizeallocated_size 列始终相等。对于空闲内存,填充是没有意义的,因此在这种情况下这些列也将相等。


匿名分配是指使用 ShmemAlloc() 直接进行的分配,而不是通过 ShmemInitStruct()ShmemInitHash() 进行的分配。

默认情况下,只有超级用户或具有 pg_read_all_stats 角色权限的角色才能读取 pg_shmem_allocations 视图。