Re: POSIX shared memory redux

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: POSIX shared memory redux
Дата
Msg-id 10990.1302563604@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: POSIX shared memory redux  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: POSIX shared memory redux  ("A.M." <agentm@themactionfaction.com>)
Список pgsql-hackers
Robert Haas <robertmhaas@gmail.com> writes:
> On Mon, Apr 11, 2011 at 3:11 PM, A.M. <agentm@themactionfaction.com> wrote:
>> What do you mean by "leakier"? The goal here is to extinguish SysV shared memory for portability and convenience
benefits.The mini-SysV proposal was implemented and shot down by Tom Lane.
 

> I mean I'm not convinced that fcntl() locking will be as reliable.

I'm not either.  Particularly not on NFS.  (Although on NFS you have
other issues to worry about too, like postmasters on different machines
being able to reach the same data directory.  I wonder if we should do
both SysV and fcntl locking ...)

> I know Tom shot that down before, but I still think it's probably the
> best way forward.

Did I?  I think I pointed out that there's zero gain in portability as
long as we still depend on SysV shmem to work.  However, if you're doing
it for other reasons than portability, it might make sense anyway.  The
question is whether there are adequate other reasons.

> The advantage I see is that we would be able to
> more easily allocate larger chunks of shared memory with changing
> kernel parameters,

Yes, getting out from under the SHMMAX bugaboo would be awfully nice.

> and perhaps even to dynamically resize shared memory chunks.

This I don't really believe will ever work reliably, especially not in
32-bit machines.  Whatever your kernel API is, you still have the
problem of finding address space contiguous to what you were already
using.
        regards, tom lane


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Lucas Cotta
Дата:
Сообщение: Postgre inner work question
Следующее
От: Tom Lane
Дата:
Сообщение: Re: POSIX shared memory redux