Обсуждение: wal_init_zero / wal_recycle

Поиск
Список
Период
Сортировка

wal_init_zero / wal_recycle

От
Nicolas Seinlet
Дата:
Hello,

while searching the doc to solve an issue, I found the interdependency between those 2 parameters was not obvious.

Here:
https://www.postgresql.org/docs/14/runtime-config-wal.html#GUC-WAL-INIT-ZERO

the wal_init_zero set to ON cause new WAL files to be filled with zeroes.

It was not crystal clear to me that when wal_recycle is also ON , the recycled files are not filled with zeroes, because they are not considered as new. Could we add a sentence stating this?

Thanks for reading me,

Nicolas.
Вложения

Re: wal_init_zero / wal_recycle

От
Peter Eisentraut
Дата:
On 24.04.24 10:08, Nicolas Seinlet wrote:
> while searching the doc to solve an issue, I found the interdependency 
> between those 2 parameters was not obvious.
> 
> Here:
> https://www.postgresql.org/docs/14/runtime-config-wal.html#GUC-WAL-INIT-ZERO
<https://www.postgresql.org/docs/14/runtime-config-wal.html#GUC-WAL-INIT-ZERO>
> 
> the wal_init_zero set to ON cause new WAL files to be filled with zeroes.
> 
> It was not crystal clear to me that when wal_recycle is also ON , the 
> recycled files are not filled with zeroes, because they are not 
> considered as new. Could we add a sentence stating this?

It currently says:

wal_init_zero: "... causes new WAL files to be filled with zeroes ..."

wal_recycle: "... avoiding the need to create new ones ..."

I'm not sure where exactly to make that more clear.




Re: wal_init_zero / wal_recycle

От
Nicolas Seinlet
Дата:




On Wednesday, April 24th, 2024 at 10:57, Peter Eisentraut <peter@eisentraut.org> wrote:

> It currently says:
>

> wal_init_zero: "... causes new WAL files to be filled with zeroes ..."
>

> wal_recycle: "... avoiding the need to create new ones ..."
>

> I'm not sure where exactly to make that more clear.

You're completely right. It was not obvious to me that recycled files are not considered new, and consequently not
filledby zeroes.  


Nicolas.
Вложения

Re: wal_init_zero / wal_recycle

От
Alvaro Herrera
Дата:
On 2024-Apr-24, Peter Eisentraut wrote:

> On 24.04.24 10:08, Nicolas Seinlet wrote:

> > It was not crystal clear to me that when wal_recycle is also ON , the
> > recycled files are not filled with zeroes, because they are not
> > considered as new. Could we add a sentence stating this?
> 
> It currently says:
> 
> wal_init_zero: "... causes new WAL files to be filled with zeroes ..."
> 
> wal_recycle: "... avoiding the need to create new ones ..."
> 
> I'm not sure where exactly to make that more clear.

It may be too subtle.  Maybe we could add a note at the end:

wal_init_zero (boolean)

If set to on (the default), this option causes new WAL files to be filled with
zeroes. On some file systems, this ensures that space is allocated before we
need to write WAL records. However, Copy-On-Write (COW) file systems may not
benefit from this technique, so the option is given to skip the unnecessary
work. If set to off, only the final byte is written when the file is created so
that it has the expected size.  >>Note that recycled WAL files are for these
purposes not considered new.<<

-- 
Álvaro Herrera         PostgreSQL Developer  —  https://www.EnterpriseDB.com/
"Pero la cosa no es muy grave ..."     (le petit Nicolas -- René Goscinny)