postmaster专题

PostgreSQL数据库PMsignal——后端进程\Postmaster信号通信

后端进程向Postermaster发信号 src/backend/storage/ipc/pmsignal.c Postmaster拥有BackendList后端列表,用于存放标识postgres子进程的Backend。AssignPostmasterChildSlot函数为新的postmaster子进程选择未使用的slot,并将其状态设置为ASSIGNED,返回slot number。如果P

【0266】postmaster创建共享内存(shared memory)、信号量(semaphores)

1. 前言 postmaster守护进程的每次启动过程中,会先执行一次“共享内存、信号量的重置”。 创建或重新创建共享内存和信号量注意:在每个“生命周期”中,我们通常会分配相同的IPC密钥(如果使用SysV shmem和/或semas)。 这有助于确保在postmaster崩溃并重新启动的情况下,我们将清理已死亡的IPC对象。 该过程由函数reset_shared()完成: static