Re: shared memory allocation - C function - Mailing list pgsql-general

From Alan Nilsson
Subject Re: shared memory allocation - C function
Date
Msg-id 27705E15-CBCF-4FC4-8FA0-64EDB37DBA2B@apple.com
Whole thread Raw
In response to Re: shared memory allocation - C function  (Michael Paquier <michael.paquier@gmail.com>)
List pgsql-general
Perfect, thank you.

On Apr 16, 2014, at 9:56 PM, Michael Paquier <michael.paquier@gmail.com> wrote:

On Thu, Apr 17, 2014 at 8:04 AM, Alan Nilsson <anilsson@apple.com> wrote:
Is it possible to allocate a small chunk of shared memory outside of any pools(i.e. manually alloced & de-alloced) that is visible to all processes?  I would like a small amount to store a mutex and a condition variable that is accessible in a c function from any process.  Is there an SPI/API to do this?
You can allocate a custom amount of shared memory at server initialization using the hook called shmem_startup_hook in ipci.c through a library loaded with shared_preload_libraries. Why not having a look at contrib/pg_stat_statements which is a good example?
--
Michael

pgsql-general by date:

Previous
From: Joseph Kregloh
Date:
Subject: Re: pg_upgrade & tablespaces
Next
From: Guillaume Drolet
Date:
Subject: Cluster recovery - FATAL: database files are incompatible with server. Different PG_CONTROL_VERSION for cluster and server.