pgsql: aio: Add WARNING result status - Mailing list pgsql-committers

From Andres Freund
Subject pgsql: aio: Add WARNING result status
Date
Msg-id E1tyzGt-001oaT-0T@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
aio: Add WARNING result status

If an IO succeeds, but issues a warning, e.g. due to a page verification
failure with zero_damaged_pages, we want to issue that warning in the context
of the issuer of the IO, not the process that executes the completion (always
the case for worker).

It's already possible for a completion callback to report a custom error
message, we just didn't have a result status that allowed a user of AIO to
know that a warning should be emitted even though the IO request succeeded.

All that's needed for that is a dedicated PGAIO_RS_ value.

Previously there were not enough bits in PgAioResult.id for the new
value. Increase. While at that, add defines for the amount of bits and static
asserts to check that the widths are appropriate.

Reviewed-by: Noah Misch <noah@leadboat.com>
Discussion: https://postgr.es/m/20250329212929.a6.nmisch@google.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/ef64fe26bad92a7b8425767cdbbe8b946d4637f0

Modified Files
--------------
src/backend/storage/aio/aio.c          |  2 ++
src/backend/storage/aio/aio_callback.c |  1 +
src/include/storage/aio.h              |  6 +++++-
src/include/storage/aio_types.h        | 26 +++++++++++++++++++++-----
4 files changed, 29 insertions(+), 6 deletions(-)


pgsql-committers by date:

Previous
From: Jeff Davis
Date:
Subject: Re: pgsql: pg_upgrade: Fix inconsistency in memory freeing
Next
From: Andres Freund
Date:
Subject: pgsql: bufmgr: Implement AIO read support