Обсуждение: BUG #18049: dynamic_shared_memory_type's value `posix` doesn't have any effect, syscall shm_get executes
BUG #18049: dynamic_shared_memory_type's value `posix` doesn't have any effect, syscall shm_get executes
The following bug has been logged on the website: Bug reference: 18049 Logged by: Jitender Kumar Email address: jkr0103@gmail.com PostgreSQL version: 12.1 Operating system: ubuntu 20.04 Description: Expected `shm_open` syscall for the `posix` value of `dynamic_shared_memory_type` parameter but strace shows `shm_get` being executed.
The following bug has been logged on the website: Bug reference: 18049 Logged by: Jitender Kumar Email address: jkr0103@gmail.com PostgreSQL version: 12.1 Operating system: ubuntu 20.04 Description: Expected `shm_open` syscall for the `posix` value of `dynamic_shared_memory_type` parameter but strace shows `shm_get` being executed.
src/backend/port/sysv_shmem. says:
* As of PostgreSQL 9.3, we normally allocate only a very small amount of
* System V shared memory, and only for the purposes of providing an
* interlock to protect the data directory.
while src/backend/storage/ipc/dsm_impl.c says:
* This file provides low-level APIs for creating and destroying shared
* memory segments using several different possible techniques. We refer
* to these segments as dynamic because they can be created, altered, and
* destroyed at any point during the server life cycle. This is unlike
* the main shared memory segment, of which there is always exactly one
* and which is always mapped at a fixed address in every PostgreSQL
* background process.
So AIUI you should always see a call like this when Postgres starts.
cheers
andrew
-- Andrew Dunstan EDB: https://www.enterprisedb.com
On 2023-08-04 Fr 01:22, PG Bug reporting form wrote:The following bug has been logged on the website: Bug reference: 18049 Logged by: Jitender Kumar Email address: jkr0103@gmail.com PostgreSQL version: 12.1 Operating system: ubuntu 20.04 Description: Expected `shm_open` syscall for the `posix` value of `dynamic_shared_memory_type` parameter but strace shows `shm_get` being executed.
src/backend/port/sysv_shmem. says:
* As of PostgreSQL 9.3, we normally allocate only a very small amount of
* System V shared memory, and only for the purposes of providing an
* interlock to protect the data directory.while src/backend/storage/ipc/dsm_impl.c says:
* This file provides low-level APIs for creating and destroying shared
* memory segments using several different possible techniques. We refer
* to these segments as dynamic because they can be created, altered, and
* destroyed at any point during the server life cycle. This is unlike
* the main shared memory segment, of which there is always exactly one
* and which is always mapped at a fixed address in every PostgreSQL
* background process.So AIUI you should always see a call like this when Postgres starts.
cheers
andrew
-- Andrew Dunstan EDB: https://www.enterprisedb.com