Re: SRA Win32 sync() code

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: SRA Win32 sync() code
Дата
Msg-id 29231.1069006898@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: SRA Win32 sync() code  (Bruce Momjian <pgman@candle.pha.pa.us>)
Ответы Re: SRA Win32 sync() code  (Jan Wieck <JanWieck@Yahoo.com>)
Re: [pgsql-hackers-win32] SRA Win32 sync() code  (Bruce Momjian <pgman@candle.pha.pa.us>)
Список pgsql-patches
Bruce Momjian <pgman@candle.pha.pa.us> writes:
> Tom Lane wrote:
>> Seriously though, if we can move the bulk of the writing work into
>> background processes then I don't believe that there will be any
>> significant penalty for regular backends.

> If the background writer starts using fsync(), we can have normal
> backends that do a write() set a shared memory boolean.  We can then
> test that boolean and do sync() only if other backends had to do their
> own writes.

That seems like the worst of both worlds --- you still are depending on
sync() for correctness.

Also, as long as backends only *seldom* do writes, making them fsync a
write when they do make one will be less of an impact on overall system
performance than having a sync() ensue shortly afterwards.  I think you
are focusing too narrowly on the idea that backends shouldn't ever wait
for writes, and failing to see the bigger picture.  What we need to
optimize is overall system performance, not an arbitrary restriction
that certain processes never wait for certain things.

            regards, tom lane

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

Предыдущее
От: Manfred Spraul
Дата:
Сообщение: Re: SIGPIPE handling
Следующее
От: Tom Lane
Дата:
Сообщение: Re: SIGPIPE handling