Re: autovacuum multiworkers, patch 5 - Mailing list pgsql-patches

From Alvaro Herrera
Subject Re: autovacuum multiworkers, patch 5
Date
Msg-id 20070412145816.GA15947@alvh.no-ip.org
Whole thread Raw
In response to Re: autovacuum multiworkers, patch 5  (Alvaro Herrera <alvherre@commandprompt.com>)
Responses Autovacuum PGPROCs in ProcGlobal? (was Re: autovacuum multiworkers)  (Alvaro Herrera <alvherre@commandprompt.com>)
List pgsql-patches
Alvaro Herrera wrote:
> ITAGAKI Takahiro wrote:
> >
> > I tested your patch on Linux and Windows. It works well on Linux,
> > where we use fork(), but falls into segfault on Windows, where we
> > use exec(). Maybe you forgot to initialize the shared memory stuff.
> > (I haven't find out where to be fixed, sorry.)
>
> Ok, thanks, this confirms that I have to try the EXEC_BACKEND code path.

Oh, uh, the problem is that CreateSharedMemoryAndSemaphores wants to
have access to the PGPROC already, but to obtain the PGPROC we need
access to autovac shared memory (per AutoVacuumGetFreeProc).  So this
wasn't too bright a choice :-(

--
Alvaro Herrera                                http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.

pgsql-patches by date:

Previous
From: Tom Lane
Date:
Subject: Re: [HACKERS] Fix mdsync never-ending loop problem
Next
From: Heikki Linnakangas
Date:
Subject: Re: [HACKERS] Fix mdsync never-ending loop problem