nocfbot-0001-Emit-I-O-group-always-for-non-text-formats.patch
application/octet-stream
Filename: nocfbot-0001-Emit-I-O-group-always-for-non-text-formats.patch
Type: application/octet-stream
Part: 0
Patch
Same data as JSON:
GET /api/v1/attachments/:id/patch
the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes.
API reference →
Format: format-patch
Series: patch 0001
Subject: Emit I/O group always for non-text formats
| File | + | − |
|---|---|---|
| src/backend/commands/explain.c | 8 | 11 |
From 24785402b25337a30a91ce95889f1dd61e4b84c7 Mon Sep 17 00:00:00 2001
From: Lukas Fittl <lukas@fittl.com>
Date: Thu, 19 Mar 2026 08:31:34 -0700
Subject: [PATCH 1/2] Emit I/O group always for non-text formats
---
src/backend/commands/explain.c | 19 ++++++++-----------
1 file changed, 8 insertions(+), 11 deletions(-)
diff --git a/src/backend/commands/explain.c b/src/backend/commands/explain.c
index ee32fbafa9d..28da983ad29 100644
--- a/src/backend/commands/explain.c
+++ b/src/backend/commands/explain.c
@@ -4041,19 +4041,16 @@ print_io_usage(ExplainState *es, IOStats *stats)
ExplainCloseGroup("Prefetch", "Prefetch", true, es);
- if (stats->io_count > 0)
- {
- ExplainOpenGroup("I/O", "I/O", true, es);
+ ExplainOpenGroup("I/O", "I/O", true, es);
- ExplainPropertyUInteger("Stalls", NULL,
- stats->stall_count, es);
- ExplainPropertyFloat("Average IO Size", NULL,
- (stats->io_nblocks * 1.0 / stats->io_count), 3, es);
- ExplainPropertyFloat("Average IOs In Progress", NULL,
- (stats->io_in_progress * 1.0 / stats->io_count), 3, es);
+ ExplainPropertyUInteger("Stalls", NULL,
+ stats->stall_count, es);
+ ExplainPropertyFloat("Average IO Size", NULL,
+ stats->io_count > 0 ? (stats->io_nblocks * 1.0 / stats->io_count) : 0, 3, es);
+ ExplainPropertyFloat("Average IOs In Progress", NULL,
+ stats->io_count > 0 ? (stats->io_in_progress * 1.0 / stats->io_count) : 0, 3, es);
- ExplainCloseGroup("I/O", "I/O", true, es);
- }
+ ExplainCloseGroup("I/O", "I/O", true, es);
}
}
}
--
2.47.1