agora inbox for [email protected]  
help / color / mirror / Atom feed
[PATCH v2 09/17] Separate tuple pre freeze checks and invoke earlier
99+ messages / 2 participants
[nested] [flat]

* [PATCH v2 09/17] Separate tuple pre freeze checks and invoke earlier
@ 2024-01-07 21:53  Melanie Plageman <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Melanie Plageman @ 2024-01-07 21:53 UTC (permalink / raw)

When combining the prune and freeze records their critical sections will
have to be combined. heap_freeze_execute_prepared() does a set of pre
freeze validations before starting its critical section. Move these
validations into a helper function, heap_pre_freeze_checks(), and invoke
it in heap_page_prune() before the pruning critical section.

Also move up the calculation of the freeze snapshot conflict horizon.
---
 src/backend/access/heap/heapam.c    | 58 ++++++++++++++++-------------
 src/backend/access/heap/pruneheap.c |  8 +++-
 src/include/access/heapam.h         |  3 ++
 3 files changed, 42 insertions(+), 27 deletions(-)

diff --git a/src/backend/access/heap/heapam.c b/src/backend/access/heap/heapam.c
index 7261c4988d7..16e3f2520a4 100644
--- a/src/backend/access/heap/heapam.c
+++ b/src/backend/access/heap/heapam.c
@@ -6659,35 +6659,19 @@ heap_execute_freeze_tuple(HeapTupleHeader tuple, HeapTupleFreeze *frz)
 }
 
 /*
- * heap_freeze_execute_prepared
- *
- * Executes freezing of one or more heap tuples on a page on behalf of caller.
- * Caller passes an array of tuple plans from heap_prepare_freeze_tuple.
- * Caller must set 'offset' in each plan for us.  Note that we destructively
- * sort caller's tuples array in-place, so caller had better be done with it.
- *
- * WAL-logs the changes so that VACUUM can advance the rel's relfrozenxid
- * later on without any risk of unsafe pg_xact lookups, even following a hard
- * crash (or when querying from a standby).  We represent freezing by setting
- * infomask bits in tuple headers, but this shouldn't be thought of as a hint.
- * See section on buffer access rules in src/backend/storage/buffer/README.
- */
+* Perform xmin/xmax XID status sanity checks before calling
+* heap_freeze_execute_prepared().
+*
+* heap_prepare_freeze_tuple doesn't perform these checks directly because
+* pg_xact lookups are relatively expensive.  They shouldn't be repeated
+* by successive VACUUMs that each decide against freezing the same page.
+*/
 void
-heap_freeze_execute_prepared(Relation rel, Buffer buffer,
-							 TransactionId snapshotConflictHorizon,
-							 HeapTupleFreeze *tuples, int ntuples)
+heap_pre_freeze_checks(Buffer buffer,
+					   HeapTupleFreeze *tuples, int ntuples)
 {
 	Page		page = BufferGetPage(buffer);
 
-	Assert(ntuples > 0);
-
-	/*
-	 * Perform xmin/xmax XID status sanity checks before critical section.
-	 *
-	 * heap_prepare_freeze_tuple doesn't perform these checks directly because
-	 * pg_xact lookups are relatively expensive.  They shouldn't be repeated
-	 * by successive VACUUMs that each decide against freezing the same page.
-	 */
 	for (int i = 0; i < ntuples; i++)
 	{
 		HeapTupleFreeze *frz = tuples + i;
@@ -6726,6 +6710,30 @@ heap_freeze_execute_prepared(Relation rel, Buffer buffer,
 										 xmax)));
 		}
 	}
+}
+
+/*
+ * heap_freeze_execute_prepared
+ *
+ * Executes freezing of one or more heap tuples on a page on behalf of caller.
+ * Caller passes an array of tuple plans from heap_prepare_freeze_tuple.
+ * Caller must set 'offset' in each plan for us.  Note that we destructively
+ * sort caller's tuples array in-place, so caller had better be done with it.
+ *
+ * WAL-logs the changes so that VACUUM can advance the rel's relfrozenxid
+ * later on without any risk of unsafe pg_xact lookups, even following a hard
+ * crash (or when querying from a standby).  We represent freezing by setting
+ * infomask bits in tuple headers, but this shouldn't be thought of as a hint.
+ * See section on buffer access rules in src/backend/storage/buffer/README.
+ */
+void
+heap_freeze_execute_prepared(Relation rel, Buffer buffer,
+							 TransactionId snapshotConflictHorizon,
+							 HeapTupleFreeze *tuples, int ntuples)
+{
+	Page		page = BufferGetPage(buffer);
+
+	Assert(ntuples > 0);
 
 	START_CRIT_SECTION();
 
diff --git a/src/backend/access/heap/pruneheap.c b/src/backend/access/heap/pruneheap.c
index e715fc29a83..bac461940de 100644
--- a/src/backend/access/heap/pruneheap.c
+++ b/src/backend/access/heap/pruneheap.c
@@ -509,6 +509,12 @@ heap_page_prune_and_freeze(Relation relation, Buffer buffer,
 		(pagefrz->freeze_required ||
 		 (whole_page_freezable && presult->nfrozen > 0 && (prune_fpi || hint_bit_fpi)));
 
+	if (do_freeze)
+	{
+		heap_pre_freeze_checks(buffer, frozen, presult->nfrozen);
+		frz_conflict_horizon = heap_frz_conflict_horizon(presult, pagefrz);
+	}
+
 	/* Any error while applying the changes is critical */
 	START_CRIT_SECTION();
 
@@ -607,8 +613,6 @@ heap_page_prune_and_freeze(Relation relation, Buffer buffer,
 
 	if (do_freeze)
 	{
-		frz_conflict_horizon = heap_frz_conflict_horizon(presult, pagefrz);
-
 		/* Execute all freeze plans for page as a single atomic action */
 		heap_freeze_execute_prepared(relation, buffer,
 									 frz_conflict_horizon,
diff --git a/src/include/access/heapam.h b/src/include/access/heapam.h
index 69d97bb8ece..d14f36d9ce7 100644
--- a/src/include/access/heapam.h
+++ b/src/include/access/heapam.h
@@ -315,6 +315,9 @@ extern TransactionId heap_frz_conflict_horizon(PruneFreezeResult *presult,
 extern bool heap_prepare_freeze_tuple(HeapTupleHeader tuple,
 									  HeapPageFreeze *pagefrz,
 									  HeapTupleFreeze *frz, bool *totally_frozen);
+
+extern void heap_pre_freeze_checks(Buffer buffer,
+								   HeapTupleFreeze *tuples, int ntuples);
 extern void heap_freeze_execute_prepared(Relation rel, Buffer buffer,
 										 TransactionId snapshotConflictHorizon,
 										 HeapTupleFreeze *tuples, int ntuples);
-- 
2.40.1


--rdqtp5puvxqotfdw
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment;
	filename="v2-0010-Inline-heap_freeze_execute_prepared.patch"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread

* [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length
@ 2026-03-12 15:12  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 99+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:12 UTC (permalink / raw)

---
 src/backend/commands/cluster.c                            | 2 +-
 src/backend/replication/pgoutput_repack/pgoutput_repack.c | 8 +++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index 29440fb75cd..244843ee1cf 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -3113,7 +3113,7 @@ restore_tuple(BufFile *file, Relation relation, MemoryContext cxt)
 	uint32		t_len;
 	HeapTuple	tup;
 	MemoryContext oldcxt;
-	uint32		natt_ext;
+	int			natt_ext;
 	List	   *attrs_ext = NIL;
 
 	oldcxt = MemoryContextSwitchTo(cxt);
diff --git a/src/backend/replication/pgoutput_repack/pgoutput_repack.c b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
index 79fc611b9ff..61cd7c52ae6 100644
--- a/src/backend/replication/pgoutput_repack/pgoutput_repack.c
+++ b/src/backend/replication/pgoutput_repack/pgoutput_repack.c
@@ -175,7 +175,7 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 	BufFile    *file;
 	char		kind_byte = (char) kind;
 	List	   *attrs_ext = NIL;
-	uint32		natt_ext;
+	int			natt_ext;
 
 	dstate = (RepackDecodingState *) ctx->output_writer_private;
 	file = dstate->file;
@@ -237,14 +237,12 @@ store_change(LogicalDecodingContext *ctx, Relation relation,
 				Assert(VARATT_IS_EXTERNAL_ONDISK(varlena_pointer));
 			}
 		}
-		natt_ext = list_length(attrs_ext);
 	}
-	else
-		natt_ext = 0;
 
 	/* Write the number of external attributes. */
+	natt_ext = list_length(attrs_ext);
 	BufFileWrite(file, &natt_ext, sizeof(natt_ext));
-	/* ... and the attributes themselves, if there are some. */
+	/* ... and the attributes themselves, if any */
 	foreach_ptr(varlena, attr_val, attrs_ext)
 	{
 		varlena    *ext_val;
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0007-no-need-for-palloc0-here-simple-palloc-is-enough.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 99+ messages in thread


end of thread, other threads:[~2026-03-12 15:12 UTC | newest]

Thread overview: 99+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2024-01-07 21:53 [PATCH v2 09/17] Separate tuple pre freeze checks and invoke earlier Melanie Plageman <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[email protected]>
2026-03-12 15:12 [PATCH 6/9] use 'int' instead of 'uint32' for the result of list_length Álvaro Herrera <[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