Re: SPI shared memory ? - Mailing list pgsql-general

From Tom Lane
Subject Re: SPI shared memory ?
Date
Msg-id 1469.1190433044@sss.pgh.pa.us
Whole thread Raw
In response to Re: SPI shared memory ?  (Alex Vinogradovs <AVinogradovs@Clearpathnet.com>)
List pgsql-general
Alex Vinogradovs <AVinogradovs@Clearpathnet.com> writes:
> Yes, I'd like to get some memory of my own, so that it can
> be shared between functions executing in different connections.
> Is there an existent API, or should I just straight use Unix IPC ?

As of (I think) 8.2, there's RequestAddinShmemSpace and RequestAddinLWLocks.
However, the fly in the ointment is that you can only usefully call
these from a loadable module that is preloaded at postmaster start;
otherwise it is too late to affect the sizing of shared memory.

There's enough slop in the shared memory allocation that you can
probably grab a few dozen or hundred bytes without a pre-allocation.
One possibility is to do that and use it to store a reference to a
separate shared memory segment.

            regards, tom lane

pgsql-general by date:

Previous
From: "Merlin Moncure"
Date:
Subject: Re: Migration from PervasiveSQL
Next
From: Christian Schröder
Date:
Subject: Re: Performance Issues