public inbox for [email protected]
help / color / mirror / Atom feedpgsql: Add file_extend_method=posix_fallocate,write_zeros.
10+ messages / 6 participants
[nested] [flat]
* pgsql: Add file_extend_method=posix_fallocate,write_zeros.
@ 2026-02-06 05:09 Thomas Munro <[email protected]>
0 siblings, 0 replies; 10+ messages in thread
From: Thomas Munro @ 2026-02-06 05:09 UTC (permalink / raw)
To: [email protected]
Add file_extend_method=posix_fallocate,write_zeros.
Provide a way to disable the use of posix_fallocate() for relation
files. It was introduced by commit 4d330a61bb1. The new setting
file_extend_method=write_zeros can be used as a workaround for problems
reported from the field:
* BTRFS compression is disabled by the use of posix_fallocate()
* XFS could produce spurious ENOSPC errors in some Linux kernel
versions, though that problem is reported to have been fixed
The default is file_extend_method=posix_fallocate if available, as
before. The write_zeros option is similar to PostgreSQL < 16, except
that now it's multi-block.
Backpatch-through: 16
Reviewed-by: Jakub Wartak <[email protected]>
Reported-by: Dimitrios Apostolou <[email protected]>
Discussion: https://postgr.es/m/b1843124-fd22-e279-a31f-252dffb6fbf2%40gmx.net
Branch
------
REL_16_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/e37b598028469d260650e5e1671c8275d30e22b6
Modified Files
--------------
doc/src/sgml/config.sgml | 36 +++++++++++++++++++++++++++
src/backend/storage/file/fd.c | 3 +++
src/backend/storage/smgr/md.c | 21 ++++++++++++----
src/backend/utils/misc/guc_tables.c | 19 ++++++++++++++
src/backend/utils/misc/postgresql.conf.sample | 5 ++++
src/include/storage/fd.h | 11 ++++++++
6 files changed, 90 insertions(+), 5 deletions(-)
^ permalink raw reply [nested|flat] 10+ messages in thread
* pgsql: Add file_extend_method=posix_fallocate,write_zeros.
@ 2026-02-06 05:09 Thomas Munro <[email protected]>
0 siblings, 0 replies; 10+ messages in thread
From: Thomas Munro @ 2026-02-06 05:09 UTC (permalink / raw)
To: [email protected]
Add file_extend_method=posix_fallocate,write_zeros.
Provide a way to disable the use of posix_fallocate() for relation
files. It was introduced by commit 4d330a61bb1. The new setting
file_extend_method=write_zeros can be used as a workaround for problems
reported from the field:
* BTRFS compression is disabled by the use of posix_fallocate()
* XFS could produce spurious ENOSPC errors in some Linux kernel
versions, though that problem is reported to have been fixed
The default is file_extend_method=posix_fallocate if available, as
before. The write_zeros option is similar to PostgreSQL < 16, except
that now it's multi-block.
Backpatch-through: 16
Reviewed-by: Jakub Wartak <[email protected]>
Reported-by: Dimitrios Apostolou <[email protected]>
Discussion: https://postgr.es/m/b1843124-fd22-e279-a31f-252dffb6fbf2%40gmx.net
Branch
------
REL_17_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/4dac22aa10d2882c2e6fb465d7c314cc2d8fb754
Modified Files
--------------
doc/src/sgml/config.sgml | 37 +++++++++++++++++++++++++++
src/backend/storage/file/fd.c | 3 +++
src/backend/storage/smgr/md.c | 21 +++++++++++----
src/backend/utils/misc/guc_tables.c | 19 ++++++++++++++
src/backend/utils/misc/postgresql.conf.sample | 5 ++++
src/include/storage/fd.h | 11 ++++++++
6 files changed, 91 insertions(+), 5 deletions(-)
^ permalink raw reply [nested|flat] 10+ messages in thread
* pgsql: Add file_extend_method=posix_fallocate,write_zeros.
@ 2026-02-06 05:09 Thomas Munro <[email protected]>
2026-02-06 11:30 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Michael Paquier <[email protected]>
0 siblings, 1 reply; 10+ messages in thread
From: Thomas Munro @ 2026-02-06 05:09 UTC (permalink / raw)
To: [email protected]
Add file_extend_method=posix_fallocate,write_zeros.
Provide a way to disable the use of posix_fallocate() for relation
files. It was introduced by commit 4d330a61bb1. The new setting
file_extend_method=write_zeros can be used as a workaround for problems
reported from the field:
* BTRFS compression is disabled by the use of posix_fallocate()
* XFS could produce spurious ENOSPC errors in some Linux kernel
versions, though that problem is reported to have been fixed
The default is file_extend_method=posix_fallocate if available, as
before. The write_zeros option is similar to PostgreSQL < 16, except
that now it's multi-block.
Backpatch-through: 16
Reviewed-by: Jakub Wartak <[email protected]>
Reported-by: Dimitrios Apostolou <[email protected]>
Discussion: https://postgr.es/m/b1843124-fd22-e279-a31f-252dffb6fbf2%40gmx.net
Branch
------
REL_18_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/33e3de6d77e87d6c3c6f8f878dd8de42d37c3b8f
Modified Files
--------------
doc/src/sgml/config.sgml | 37 +++++++++++++++++++++++++++
src/backend/storage/file/fd.c | 3 +++
src/backend/storage/smgr/md.c | 21 +++++++++++----
src/backend/utils/misc/guc_tables.c | 19 ++++++++++++++
src/backend/utils/misc/postgresql.conf.sample | 4 +++
src/include/storage/fd.h | 11 ++++++++
6 files changed, 90 insertions(+), 5 deletions(-)
^ permalink raw reply [nested|flat] 10+ messages in thread
* Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros.
2026-02-06 05:09 pgsql: Add file_extend_method=posix_fallocate,write_zeros. Thomas Munro <[email protected]>
@ 2026-02-06 11:30 ` Michael Paquier <[email protected]>
2026-02-06 12:57 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Thomas Munro <[email protected]>
2026-02-12 12:02 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Peter Eisentraut <[email protected]>
0 siblings, 2 replies; 10+ messages in thread
From: Michael Paquier @ 2026-02-06 11:30 UTC (permalink / raw)
To: Thomas Munro <[email protected]>; +Cc: [email protected]
Hi Thomas,
On Fri, Feb 06, 2026 at 05:09:54AM +0000, Thomas Munro wrote:
> Add file_extend_method=posix_fallocate,write_zeros.
It looks like you need to update .abi-compliance-check for stable
branches down to v16, due to the new entry added to
ConfigureNamesEnum. See:
https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=crake&dt=2026-02-06%2009%3A27%3A27
--
Michael
Attachments:
[application/pgp-signature] signature.asc (833B, 2-signature.asc)
download
^ permalink raw reply [nested|flat] 10+ messages in thread
* Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros.
2026-02-06 05:09 pgsql: Add file_extend_method=posix_fallocate,write_zeros. Thomas Munro <[email protected]>
2026-02-06 11:30 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Michael Paquier <[email protected]>
@ 2026-02-06 12:57 ` Thomas Munro <[email protected]>
1 sibling, 0 replies; 10+ messages in thread
From: Thomas Munro @ 2026-02-06 12:57 UTC (permalink / raw)
To: Michael Paquier <[email protected]>; +Cc: Thomas Munro <[email protected]>; [email protected]
On Sat, Feb 7, 2026 at 12:30 AM Michael Paquier <[email protected]> wrote:
> On Fri, Feb 06, 2026 at 05:09:54AM +0000, Thomas Munro wrote:
> > Add file_extend_method=posix_fallocate,write_zeros.
>
> It looks like you need to update .abi-compliance-check for stable
> branches down to v16, due to the new entry added to
> ConfigureNamesEnum. See:
> https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=crake&dt=2026-02-06%2009%3A27%3A27
Ahh, right, I see (I was asking about this on the patch thread, as I
hadn't had to do that before). Will do in a few hours, sorry for the
build farm noise. Thanks!
^ permalink raw reply [nested|flat] 10+ messages in thread
* Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros.
2026-02-06 05:09 pgsql: Add file_extend_method=posix_fallocate,write_zeros. Thomas Munro <[email protected]>
2026-02-06 11:30 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Michael Paquier <[email protected]>
@ 2026-02-12 12:02 ` Peter Eisentraut <[email protected]>
2026-02-12 15:53 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Tom Lane <[email protected]>
1 sibling, 1 reply; 10+ messages in thread
From: Peter Eisentraut @ 2026-02-12 12:02 UTC (permalink / raw)
To: Michael Paquier <[email protected]>; Thomas Munro <[email protected]>; +Cc: pgsql-hackers <[email protected]>
On 06.02.26 12:30, Michael Paquier wrote:
> Hi Thomas,
>
> On Fri, Feb 06, 2026 at 05:09:54AM +0000, Thomas Munro wrote:
>> Add file_extend_method=posix_fallocate,write_zeros.
>
> It looks like you need to update .abi-compliance-check for stable
> branches down to v16, due to the new entry added to
> ConfigureNamesEnum. See:
> https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=crake&dt=2026-02-06%2009%3A27%3A27
I suppose technically this is an ABI change since the size of
ConfigureNamesEnum is changed, but it seems this is irrelevant in
practice. Could it be possible to ignore stuff like this without manual
intervention?
The concern is that say authors or packagers of extensions will observe
that there was an ABI change and will think they have to do some extra
work, but in practice probably not.
The goal should be to not have ABI changes in stable branches. If we
just keep marking ABI changes without distinction, then this could lead
to fatigue.
^ permalink raw reply [nested|flat] 10+ messages in thread
* Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros.
2026-02-06 05:09 pgsql: Add file_extend_method=posix_fallocate,write_zeros. Thomas Munro <[email protected]>
2026-02-06 11:30 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Michael Paquier <[email protected]>
2026-02-12 12:02 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Peter Eisentraut <[email protected]>
@ 2026-02-12 15:53 ` Tom Lane <[email protected]>
2026-02-12 19:04 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Tom Lane <[email protected]>
0 siblings, 1 reply; 10+ messages in thread
From: Tom Lane @ 2026-02-12 15:53 UTC (permalink / raw)
To: Peter Eisentraut <[email protected]>; +Cc: Michael Paquier <[email protected]>; Thomas Munro <[email protected]>; pgsql-hackers <[email protected]>
Peter Eisentraut <[email protected]> writes:
> I suppose technically this is an ABI change since the size of
> ConfigureNamesEnum is changed, but it seems this is irrelevant in
> practice. Could it be possible to ignore stuff like this without manual
> intervention?
I am working on a bug report to libabigail, arguing that this should
not be reported as an ABI diff (at least not in --headersdir mode).
That's at best a long-term solution, but on the other hand it's
not every day that we add a new GUC to back branches.
There was upthread discussion about using a suppression file, but
that'd require some testing to ensure that it does what we want
and nothing more nor less. (For instance, if suppressing
ConfigureNamesEnum resulted in no complaints about changes in
struct config_enum, that'd be very bad.)
Keep in mind also that libabigail seems to have some nasty blind
spots. (I'm about to post something to pgsql-hackers about one that
I found last week.)
For the time being, I think we'd be well advised to treat the abidiff
reports as an experimental work-in-progress. They might eventually
get to the level of trustworthiness that you seem to be envisioning,
but we're not there yet.
regards, tom lane
^ permalink raw reply [nested|flat] 10+ messages in thread
* Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros.
2026-02-06 05:09 pgsql: Add file_extend_method=posix_fallocate,write_zeros. Thomas Munro <[email protected]>
2026-02-06 11:30 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Michael Paquier <[email protected]>
2026-02-12 12:02 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Peter Eisentraut <[email protected]>
2026-02-12 15:53 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Tom Lane <[email protected]>
@ 2026-02-12 19:04 ` Tom Lane <[email protected]>
2026-02-13 14:23 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. David E. Wheeler <[email protected]>
0 siblings, 1 reply; 10+ messages in thread
From: Tom Lane @ 2026-02-12 19:04 UTC (permalink / raw)
To: Peter Eisentraut <[email protected]>; +Cc: Andrew Dunstan <[email protected]>; David E. Wheeler <[email protected]>; Michael Paquier <[email protected]>; Thomas Munro <[email protected]>; pgsql-hackers <[email protected]>
I wrote:
> Peter Eisentraut <[email protected]> writes:
>> I suppose technically this is an ABI change since the size of
>> ConfigureNamesEnum is changed, but it seems this is irrelevant in
>> practice. Could it be possible to ignore stuff like this without manual
>> intervention?
> I am working on a bug report to libabigail, arguing that this should
> not be reported as an ABI diff (at least not in --headersdir mode).
So I tried to make a small reproducer, and failed. Then I ran the
buildfarm script (with abidiff enabled) against c6881f79228,
right before the last .abi-compliance-history update, and it passed.
IOW, the version of abidiff I have here does not seem to have this
bug. It's 2.8.0 from last July or so.
Now I'm wondering exactly what libabigail releases crake and baza
are using.
regards, tom lane
^ permalink raw reply [nested|flat] 10+ messages in thread
* Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros.
2026-02-06 05:09 pgsql: Add file_extend_method=posix_fallocate,write_zeros. Thomas Munro <[email protected]>
2026-02-06 11:30 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Michael Paquier <[email protected]>
2026-02-12 12:02 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Peter Eisentraut <[email protected]>
2026-02-12 15:53 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Tom Lane <[email protected]>
2026-02-12 19:04 ` Re: pgsql: Add file_extend_method=posix_fallocate,write_zeros. Tom Lane <[email protected]>
@ 2026-02-13 14:23 ` David E. Wheeler <[email protected]>
0 siblings, 0 replies; 10+ messages in thread
From: David E. Wheeler @ 2026-02-13 14:23 UTC (permalink / raw)
To: Tom Lane <[email protected]>; +Cc: Peter Eisentraut <[email protected]>; Andrew Dunstan <[email protected]>; Michael Paquier <[email protected]>; Thomas Munro <[email protected]>; pgsql-hackers <[email protected]>
On Feb 12, 2026, at 14:04, Tom Lane <[email protected]> wrote:
> Now I'm wondering exactly what libabigail releases crake and baza
> are using.
Baza has 2.2.0, installed from Bookworm packaging. I can see about upgrading it this weekend, either building from source or making a new VM with Trixie.
D
Attachments:
[application/pgp-signature] signature.asc (833B, 2-signature.asc)
download
^ permalink raw reply [nested|flat] 10+ messages in thread
* pgsql: Add file_extend_method=posix_fallocate,write_zeros.
@ 2026-02-06 05:10 Thomas Munro <[email protected]>
0 siblings, 0 replies; 10+ messages in thread
From: Thomas Munro @ 2026-02-06 05:10 UTC (permalink / raw)
To: [email protected]
Add file_extend_method=posix_fallocate,write_zeros.
Provide a way to disable the use of posix_fallocate() for relation
files. It was introduced by commit 4d330a61bb1. The new setting
file_extend_method=write_zeros can be used as a workaround for problems
reported from the field:
* BTRFS compression is disabled by the use of posix_fallocate()
* XFS could produce spurious ENOSPC errors in some Linux kernel
versions, though that problem is reported to have been fixed
The default is file_extend_method=posix_fallocate if available, as
before. The write_zeros option is similar to PostgreSQL < 16, except
that now it's multi-block.
Backpatch-through: 16
Reviewed-by: Jakub Wartak <[email protected]>
Reported-by: Dimitrios Apostolou <[email protected]>
Discussion: https://postgr.es/m/b1843124-fd22-e279-a31f-252dffb6fbf2%40gmx.net
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/f94e9141a0bbb365f8194517e142746466ee7014
Modified Files
--------------
doc/src/sgml/config.sgml | 37 +++++++++++++++++++++++++++
src/backend/storage/file/fd.c | 3 +++
src/backend/storage/smgr/md.c | 21 +++++++++++----
src/backend/utils/misc/guc_parameters.dat | 7 +++++
src/backend/utils/misc/guc_tables.c | 9 +++++++
src/backend/utils/misc/postgresql.conf.sample | 4 +++
src/include/storage/fd.h | 11 ++++++++
7 files changed, 87 insertions(+), 5 deletions(-)
^ permalink raw reply [nested|flat] 10+ messages in thread
end of thread, other threads:[~2026-02-13 14:23 UTC | newest]
Thread overview: 10+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2026-02-06 05:09 pgsql: Add file_extend_method=posix_fallocate,write_zeros. Thomas Munro <[email protected]>
2026-02-06 05:09 pgsql: Add file_extend_method=posix_fallocate,write_zeros. Thomas Munro <[email protected]>
2026-02-06 05:09 pgsql: Add file_extend_method=posix_fallocate,write_zeros. Thomas Munro <[email protected]>
2026-02-06 11:30 ` Michael Paquier <[email protected]>
2026-02-06 12:57 ` Thomas Munro <[email protected]>
2026-02-12 12:02 ` Peter Eisentraut <[email protected]>
2026-02-12 15:53 ` Tom Lane <[email protected]>
2026-02-12 19:04 ` Tom Lane <[email protected]>
2026-02-13 14:23 ` David E. Wheeler <[email protected]>
2026-02-06 05:10 pgsql: Add file_extend_method=posix_fallocate,write_zeros. Thomas Munro <[email protected]>
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox