Re: InstallXLogFileSegment() vs concurrent WAL flush

Поиск
Список
Период
Сортировка
От Kyotaro Horiguchi
Тема Re: InstallXLogFileSegment() vs concurrent WAL flush
Дата
Msg-id 20240206.165816.1496814607463556734.horikyota.ntt@gmail.com
обсуждение исходный текст
Ответ на Re: InstallXLogFileSegment() vs concurrent WAL flush  (Thomas Munro <thomas.munro@gmail.com>)
Список pgsql-hackers
At Fri, 2 Feb 2024 14:42:46 +0100, Thomas Munro <thomas.munro@gmail.com> wrote in 
> On Fri, Feb 2, 2024 at 12:56 PM Yugo NAGATA <nagata@sraoss.co.jp> wrote:
> > On Fri, 2 Feb 2024 11:18:18 +0100
> > Thomas Munro <thomas.munro@gmail.com> wrote:
> > > One simple way to address that would be to make XLogFileInitInternal()
> > > wait for InstallXLogFileSegment() to finish.  It's a little
> >
> > Or, can we make sure the rename is durable by calling fsync before
> > returning the fd, as a patch attached here?
> 
> Right, yeah, that works too.  I'm not sure which way is better.

I'm not sure I like issuing spurious syncs unconditionally. Therefore,
I prefer Thomas' approach in that regard.  0002 would be beneficial,
considering the case of a very large max_wal_size, and the code seems
to be the minimal required. I don't think it matters that the lock
attempts occur uselessly until the first segment installation. That
being said, we could avoid it by initializing
last_known_installed_segno properly.

regards.

-- 
Kyotaro Horiguchi
NTT Open Source Software Center

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

Предыдущее
От: Yugo NAGATA
Дата:
Сообщение: Re: Change COPY ... ON_ERROR ignore to ON_ERROR ignore_row
Следующее
От: John Naylor
Дата:
Сообщение: Re: Change GUC hashtable to use simplehash?