0001-amcheck-avoid-using-VARSIZE-for-VARATT_IS_SHORT.patch
application/octet-stream
Filename: 0001-amcheck-avoid-using-VARSIZE-for-VARATT_IS_SHORT.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: amcheck: avoid using VARSIZE() for VARATT_IS_SHORT()
| File | + | − |
|---|---|---|
| contrib/amcheck/verify_nbtree.c | 1 | 1 |
| src/include/varatt.h | 1 | 0 |
From 276482c76491b1aa18a729dd637342b374dcd7fa Mon Sep 17 00:00:00 2001
From: Andrey Borodin <amborodin@acm.org>
Date: Sun, 3 May 2026 23:13:59 +0500
Subject: [PATCH] amcheck: avoid using VARSIZE() for VARATT_IS_SHORT()
---
contrib/amcheck/verify_nbtree.c | 2 +-
src/include/varatt.h | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/contrib/amcheck/verify_nbtree.c b/contrib/amcheck/verify_nbtree.c
index b74ab5f7a05..a3394d88a4e 100644
--- a/contrib/amcheck/verify_nbtree.c
+++ b/contrib/amcheck/verify_nbtree.c
@@ -2888,7 +2888,7 @@ bt_normalize_tuple(BtreeCheckState *state, IndexTuple itup)
ItemPointerGetBlockNumber(&(itup->t_tid)),
ItemPointerGetOffsetNumber(&(itup->t_tid)),
RelationGetRelationName(state->rel))));
- else if (!VARATT_IS_COMPRESSED(DatumGetPointer(normalized[i])) &&
+ else if (!VARATT_IS_EXTENDED(DatumGetPointer(normalized[i])) &&
VARSIZE(DatumGetPointer(normalized[i])) > TOAST_INDEX_TARGET &&
(att->attstorage == TYPSTORAGE_EXTENDED ||
att->attstorage == TYPSTORAGE_MAIN))
diff --git a/src/include/varatt.h b/src/include/varatt.h
index 000bdf33b92..321342cab67 100644
--- a/src/include/varatt.h
+++ b/src/include/varatt.h
@@ -297,6 +297,7 @@ typedef struct
static inline Size
VARSIZE(const void *PTR)
{
+ Assert(VARATT_IS_4B(PTR));
return VARSIZE_4B(PTR);
}
--
2.50.1 (Apple Git-155)