This has been saved for the 7.3 release:
http://candle.pha.pa.us/cgi-bin/pgpatches2
---------------------------------------------------------------------------
mkscott@sacadia.com wrote:
>
> Hi All,
>
> This patch is to start up a globals storage environment
> and, in the future, thread-safety. It includes three new files:
>
> env/env.h -- Header for globals storage
> env/env.c -- Source for globals storage and creation
> env/thread.h -- Header for possible future thread implementation
>
> I created a new subsystem directory but they can go where appropriate.
>
> Implementation is very much like shared memory storage. The globals
> environment is a hashtable that stores stuctures for the various
> subsystems. Developers would be able to create structures to store
> and retrieve items
> that would normally be held in global variables. The hashtable is keyed
> by an int that identifies the specific global.
>
> I had to change dynahash.c to use MemoryContexts only if HASH_ALLOC and
> HASH_CONTEXT are not set in the control flags.
>
> I have included an example implementation for the MemoryContext globals.
> It uses #defines to redefine the globals to the stored
> structure if compiled with USE_GLOBAL_ENVIRONMENT. This is probably
> should be optimized to reduce the number of calls to retrieve storage but
> I will worry about that when and if the patch is accepted.
>
> Thanks,
>
> Myron Scott
> mkscott@sacadia.com
>
Content-Description:
[ Attachment, skipping... ]
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
> (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026