Re: Win32 shmem

From: Magnus Hagander <magnus(at)hagander(dot)net>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-patches <pgsql-patches(at)postgresql(dot)org>
Subject: Re: Win32 shmem
Date: 2007-03-21 09:25:45
Message-ID: 20070321092545.GE30013@svr2.hagander.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

On Tue, Mar 20, 2007 at 12:12:45PM -0400, Tom Lane wrote:
> Magnus Hagander <magnus(at)hagander(dot)net> writes:
> >>> I think you do still need the on_shmem_exit detach callback.
> >>
> >> Ok, will look into that. Haven't tested that scenario.
>
> > That was indeed so. Added in new version, attached.
>
> If it handles the restart-after-backend-crash scenario and correctly
> locks out starting a fresh postmaster (after postmaster crash) until
> all old backends are gone, then it's probably ready to commit for
> more-widespread testing.

It does, at least in my tests. I have found one thing that needs to be
chagned for terminal server sessions, and then I need to update the build
system to use it on mingw as well. Will do that and then commit.

> I note that sysv_shmem contains some #ifdef WIN32 and #ifdef __CYGWIN__
> kluges; will it now be possible to remove those, or will the Cygwin
> build still be using that code?

I *think* so. I *think* the CYGWIN port does not rely on #ifdef WIN32s
anymore (which is corret given that it's not really win32). If I do a grep
of the sourcecode, I get a bunch of things like
./utils/mmgr/mcxt.c:#if defined(WIN32) || defined(__CYGWIN__)
which would indicate that at least some places know they're different.

I can include removal of those in my change, but I'm not in a position to
test them myself. I guess we could do it and see if the buildfarm breaks,
and if that revert it.

//Magnus

In response to

Browse pgsql-patches by date

  From Date Subject
Next Message Heikki Linnakangas 2007-03-21 10:18:07 Re: Bitmapscan changes - Requesting further feedback
Previous Message Jeremy Drake 2007-03-21 06:12:55 Re: patch adding new regexp functions