Re: Posix Shared Mem patch - Mailing list pgsql-hackers

From Robert Haas
Subject Re: Posix Shared Mem patch
Date
Msg-id CA+TgmobT1jyX7v3AH9P0+eOdPsCMt+bwhbqQK7c8W0BBoGNP6w@mail.gmail.com
Whole thread Raw
In response to Re: Posix Shared Mem patch  (Thom Brown <thom@linux.com>)
Responses Re: Posix Shared Mem patch  (Magnus Hagander <magnus@hagander.net>)
List pgsql-hackers
On Thu, Jun 28, 2012 at 12:13 PM, Thom Brown <thom@linux.com> wrote:
> On 64-bit Linux, if I allocate more shared buffers than the system is
> capable of reserving, it doesn't start.  This is expected, but there's
> no error logged anywhere (actually, nothing logged at all), and the
> postmaster.pid file is left behind after this failure.

Fixed.

However, I discovered something unpleasant.  With the new code, on
MacOS X, if you set shared_buffers to say 3200GB, the server happily
starts up.  Or at least the shared memory allocation goes through just
fine.  The postmaster then sits there apparently forever without
emitting any log messages, which I eventually discovered was because
it's busy initializing a billion or so spinlocks.

I'm pretty sure that this machine does not have >3TB of virtual
memory, even counting swap.  So that means that MacOS X has absolutely
no common sense whatsoever as far as anonymous shared memory
allocations go.  Not sure exactly what to do about that.  Linux is
more sensible, at least on the system I tested, and fails cleanly.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


pgsql-hackers by date:

Previous
From: Jeff Janes
Date:
Subject: Re: Covering Indexes
Next
From: Magnus Hagander
Date:
Subject: Re: Posix Shared Mem patch