Re: EXEC_BACKEND

From: Magnus Hagander <magnus(at)hagander(dot)net>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Simon Riggs <simon(at)2ndQuadrant(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: EXEC_BACKEND
Date: 2008-09-23 20:40:23
Message-ID: 48D95437.3030904@hagander.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Bruce Momjian wrote:
> Simon Riggs wrote:
>> On Tue, 2008-09-16 at 15:53 -0400, Tom Lane wrote:
>>> Simon Riggs <simon(at)2ndQuadrant(dot)com> writes:
>>>> We keep talking about EXEC_BACKEND mode, though until recently I had
>>>> misunderstood what that meant. I also realised that I have more than
>>>> once neglected to take it into account when writing a patch - one recent
>>>> patch failed to do this.
>>>> I can't find anything coherent in docs/readme/comments to explain why it
>>>> exists and what its implications are.
>>> It exists because Windows doesn't have fork(), only the equivalent of
>>> fork-and-exec. Which means that no state variables will be inherited
>>> from the postmaster by its child processes, and any state that needs to
>>> be carried across has to be handled explicitly. You can define
>>> EXEC_BACKEND in a non-Windows build, for the purpose of testing code
>>> to see if it works in that environment.
>> OK, if its that simple then I see why its not documented. Thanks. I
>> thought there might be more to it than that.
>
> I added a little documentation at the top of
> postmaster.c::backend_forkexec().

Doesn't that make more sense in say, the Developer FAQ?

//Magnus

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2008-09-23 20:43:12 Re: EXEC_BACKEND
Previous Message Bruce Momjian 2008-09-23 20:35:44 Re: EXEC_BACKEND