From: | Andrew Dunstan <andrew(at)dunslane(dot)net> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: windows shared memory error |
Date: | 2009-05-02 14:57:00 |
Message-ID: | 49FC5F3C.7000203@dunslane.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Tom Lane wrote:
>
> Now this would only explain problems if there were some code path
> through the postmaster that could leave the errno set to
> ERROR_ALREADY_EXISTS (a/k/a EEXIST) when this code is reached. I'm not
> sure there is one, and I have even less of a theory as to why system
> load might make it more probable to happen. Still, this looks like a
> bug from here, and repeating the create call won't fix it.
>
>
>
Oh, I think that this code has such a path. We already know that the
code I showed is entered when that error is set. So the solution would
be to put SetError(0) before the call to CreateFileMapping(), possibly
before both such calls.
Maybe we need to look at all the places we call GetLastError(). There
are quite a few of them.
Good catch, BTW.
cheers
andrew
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2009-05-02 15:14:10 | Re: windows shared memory error |
Previous Message | Nikhil Sontakke | 2009-05-02 09:30:16 | Re: Throw some low-level C scutwork at me |