pgsql: aio: Add WARNING result status

From: Andres Freund <andres(at)anarazel(dot)de>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: aio: Add WARNING result status
Date: 2025-03-30 20:28:43
Message-ID: E1tyzGt-001oaT-0T@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: 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(at)leadboat(dot)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(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Andres Freund 2025-03-30 21:43:20 pgsql: bufmgr: Implement AIO read support
Previous Message Jeff Davis 2025-03-30 18:12:20 Re: pgsql: pg_upgrade: Fix inconsistency in memory freeing