agora inbox for [email protected]  
help / color / mirror / Atom feed
[PATCH v28 03/11] Allow to prolong life span of transition tables until transaction end
66+ messages / 2 participants
[nested] [flat]

* [PATCH v28 03/11] Allow to prolong life span of transition tables until transaction end
@ 2019-12-20 01:09  Yugo Nagata <[email protected]>
  0 siblings, 0 replies; 66+ messages in thread

From: Yugo Nagata @ 2019-12-20 01:09 UTC (permalink / raw)

Originally, tuplestores of AFTER trigger's transition tables were
freed for each query depth. For our IVM implementation, we would like
to prolong life of the tuplestores because we have to preserve them
for a whole query assuming that some base tables might be changed
in some trigger functions.
---
 src/backend/commands/trigger.c | 83 ++++++++++++++++++++++++++++++++--
 src/include/commands/trigger.h |  2 +
 2 files changed, 81 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/trigger.c b/src/backend/commands/trigger.c
index 4b295f8da5..354ea94777 100644
--- a/src/backend/commands/trigger.c
+++ b/src/backend/commands/trigger.c
@@ -3742,6 +3742,10 @@ typedef struct AfterTriggerEventList
  * end of the list, so it is relatively easy to discard them.  The event
  * list chunks themselves are stored in event_cxt.
  *
+ * prolonged_tuplestored is a list of transition table tuplestores whose
+ * life are prolonged to the end of the outmost query instead of each nested
+ * query.
+ *
  * query_depth is the current depth of nested AfterTriggerBeginQuery calls
  * (-1 when the stack is empty).
  *
@@ -3807,6 +3811,7 @@ typedef struct AfterTriggersData
 	SetConstraintState state;	/* the active S C state */
 	AfterTriggerEventList events;	/* deferred-event list */
 	MemoryContext event_cxt;	/* memory context for events, if any */
+	List   *prolonged_tuplestores;	/* list of prolonged tuplestores */
 
 	/* per-query-level data: */
 	AfterTriggersQueryData *query_stack;	/* array of structs shown below */
@@ -3842,6 +3847,7 @@ struct AfterTriggersTableData
 	bool		closed;			/* true when no longer OK to add tuples */
 	bool		before_trig_done;	/* did we already queue BS triggers? */
 	bool		after_trig_done;	/* did we already queue AS triggers? */
+	bool		prolonged;			/* are transition tables prolonged? */
 	AfterTriggerEventList after_trig_events;	/* if so, saved list pointer */
 
 	/*
@@ -3891,6 +3897,7 @@ static void TransitionTableAddTuple(EState *estate,
 									TupleTableSlot *original_insert_tuple,
 									Tuplestorestate *tuplestore);
 static void AfterTriggerFreeQuery(AfterTriggersQueryData *qs);
+static void release_or_prolong_tuplestore(Tuplestorestate *ts, bool prolonged);
 static SetConstraintState SetConstraintStateCreate(int numalloc);
 static SetConstraintState SetConstraintStateCopy(SetConstraintState origstate);
 static SetConstraintState SetConstraintStateAddItem(SetConstraintState state,
@@ -4737,6 +4744,45 @@ afterTriggerInvokeEvents(AfterTriggerEventList *events,
 }
 
 
+/*
+ * SetTransitionTablePreserved
+ *
+ * Prolong lifespan of transition tables corresponding specified relid and
+ * command type to the end of the outmost query instead of each nested query.
+ * This enables to use nested AFTER trigger's transition tables from outer
+ * query's triggers.  Currently, only immediate incremental view maintenance
+ * uses this.
+ */
+void
+SetTransitionTablePreserved(Oid relid, CmdType cmdType)
+{
+	AfterTriggersTableData *table;
+	AfterTriggersQueryData *qs;
+	bool		found = false;
+	ListCell   *lc;
+
+	/* Check state, like AfterTriggerSaveEvent. */
+	if (afterTriggers.query_depth < 0)
+		elog(ERROR, "SetTransitionTablePreserved() called outside of query");
+
+	qs = &afterTriggers.query_stack[afterTriggers.query_depth];
+
+	foreach(lc, qs->tables)
+	{
+		table = (AfterTriggersTableData *) lfirst(lc);
+		if (table->relid == relid && table->cmdType == cmdType &&
+			table->closed)
+		{
+			table->prolonged = true;
+			found = true;
+		}
+	}
+
+	if (!found)
+		elog(ERROR,"could not find table with OID %d and command type %d", relid, cmdType);
+}
+
+
 /*
  * GetAfterTriggersTableData
  *
@@ -4947,6 +4993,7 @@ AfterTriggerBeginXact(void)
 	 */
 	afterTriggers.firing_counter = (CommandId) 1;	/* mustn't be 0 */
 	afterTriggers.query_depth = -1;
+	afterTriggers.prolonged_tuplestores = NIL;
 
 	/*
 	 * Verify that there is no leftover state remaining.  If these assertions
@@ -5107,19 +5154,19 @@ AfterTriggerFreeQuery(AfterTriggersQueryData *qs)
 		ts = table->old_upd_tuplestore;
 		table->old_upd_tuplestore = NULL;
 		if (ts)
-			tuplestore_end(ts);
+			release_or_prolong_tuplestore(ts, table->prolonged);
 		ts = table->new_upd_tuplestore;
 		table->new_upd_tuplestore = NULL;
 		if (ts)
-			tuplestore_end(ts);
+			release_or_prolong_tuplestore(ts, table->prolonged);
 		ts = table->old_del_tuplestore;
 		table->old_del_tuplestore = NULL;
 		if (ts)
-			tuplestore_end(ts);
+			release_or_prolong_tuplestore(ts, table->prolonged);
 		ts = table->new_ins_tuplestore;
 		table->new_ins_tuplestore = NULL;
 		if (ts)
-			tuplestore_end(ts);
+			release_or_prolong_tuplestore(ts, table->prolonged);
 		if (table->storeslot)
 		{
 			TupleTableSlot *slot = table->storeslot;
@@ -5136,6 +5183,34 @@ AfterTriggerFreeQuery(AfterTriggersQueryData *qs)
 	 */
 	qs->tables = NIL;
 	list_free_deep(tables);
+
+	/* Release prolonged tuplestores at the end of the outmost query */
+	if (afterTriggers.query_depth == 0)
+	{
+		foreach(lc, afterTriggers.prolonged_tuplestores)
+		{
+			ts = (Tuplestorestate *) lfirst(lc);
+			if (ts)
+				tuplestore_end(ts);
+		}
+		afterTriggers.prolonged_tuplestores = NIL;
+	}
+}
+
+/*
+ * Release the tuplestore, or append it to the prolonged tuplestores list.
+ */
+static void
+release_or_prolong_tuplestore(Tuplestorestate *ts, bool prolonged)
+{
+	if (prolonged && afterTriggers.query_depth > 0)
+	{
+		MemoryContext oldcxt = MemoryContextSwitchTo(CurTransactionContext);
+		afterTriggers.prolonged_tuplestores = lappend(afterTriggers.prolonged_tuplestores, ts);
+		MemoryContextSwitchTo(oldcxt);
+	}
+	else
+		tuplestore_end(ts);
 }
 
 
diff --git a/src/include/commands/trigger.h b/src/include/commands/trigger.h
index 430e3ca7dd..48a21c4c51 100644
--- a/src/include/commands/trigger.h
+++ b/src/include/commands/trigger.h
@@ -265,6 +265,8 @@ extern void AfterTriggerEndSubXact(bool isCommit);
 extern void AfterTriggerSetState(ConstraintsSetStmt *stmt);
 extern bool AfterTriggerPendingOnRel(Oid relid);
 
+extern void SetTransitionTablePreserved(Oid relid, CmdType cmdType);
+
 
 /*
  * in utils/adt/ri_triggers.c
-- 
2.25.1


--Multipart=_Thu__1_Jun_2023_23_59_09_+0900_/G5+8nG46.f1T42K
Content-Type: text/x-diff;
 name="v28-0004-Add-Incremental-View-Maintenance-support-to-pg_d.patch"
Content-Disposition: attachment;
 filename="v28-0004-Add-Incremental-View-Maintenance-support-to-pg_d.patch"
Content-Transfer-Encoding: 7bit



^ permalink  raw  reply  [nested|flat] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ 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; 66+ 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] 66+ messages in thread


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

Thread overview: 66+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2019-12-20 01:09 [PATCH v28 03/11] Allow to prolong life span of transition tables until transaction end Yugo Nagata <[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