agora inbox for pgsql-hackers@postgresql.org  
help / color / mirror / Atom feed
[PATCH v21 4/8] Row pattern recognition patch (planner).
390+ messages / 2 participants
[nested] [flat]

* [PATCH v21 4/8] Row pattern recognition patch (planner).
@ 2024-08-26 04:32  Tatsuo Ishii <ishii@postgresql.org>
  0 siblings, 0 replies; 390+ messages in thread

From: Tatsuo Ishii @ 2024-08-26 04:32 UTC (permalink / raw)

---
 src/backend/optimizer/plan/createplan.c   | 24 +++++++++++++++-----
 src/backend/optimizer/plan/planner.c      |  3 +++
 src/backend/optimizer/plan/setrefs.c      | 27 ++++++++++++++++++++++-
 src/backend/optimizer/prep/prepjointree.c |  9 ++++++++
 src/include/nodes/plannodes.h             | 19 ++++++++++++++++
 5 files changed, 76 insertions(+), 6 deletions(-)

diff --git a/src/backend/optimizer/plan/createplan.c b/src/backend/optimizer/plan/createplan.c
index 8e0e5977a9..a1b2c71364 100644
--- a/src/backend/optimizer/plan/createplan.c
+++ b/src/backend/optimizer/plan/createplan.c
@@ -288,9 +288,11 @@ static WindowAgg *make_windowagg(List *tlist, Index winref,
 								 int ordNumCols, AttrNumber *ordColIdx, Oid *ordOperators, Oid *ordCollations,
 								 int frameOptions, Node *startOffset, Node *endOffset,
 								 Oid startInRangeFunc, Oid endInRangeFunc,
-								 Oid inRangeColl, bool inRangeAsc, bool inRangeNullsFirst,
-								 List *runCondition, List *qual, bool topWindow,
-								 Plan *lefttree);
+								 Oid inRangeColl, bool inRangeAsc, bool inRangeNullsFirst, List *runCondition,
+								 RPSkipTo rpSkipTo, List *patternVariable, List *patternRegexp,
+								 List *defineClause,
+								 List *defineInitial,
+								 List *qual, bool topWindow, Plan *lefttree);
 static Group *make_group(List *tlist, List *qual, int numGroupCols,
 						 AttrNumber *grpColIdx, Oid *grpOperators, Oid *grpCollations,
 						 Plan *lefttree);
@@ -2697,6 +2699,11 @@ create_windowagg_plan(PlannerInfo *root, WindowAggPath *best_path)
 						  wc->inRangeAsc,
 						  wc->inRangeNullsFirst,
 						  best_path->runCondition,
+						  wc->rpSkipTo,
+						  wc->patternVariable,
+						  wc->patternRegexp,
+						  wc->defineClause,
+						  wc->defineInitial,
 						  best_path->qual,
 						  best_path->topwindow,
 						  subplan);
@@ -6631,8 +6638,10 @@ make_windowagg(List *tlist, Index winref,
 			   int ordNumCols, AttrNumber *ordColIdx, Oid *ordOperators, Oid *ordCollations,
 			   int frameOptions, Node *startOffset, Node *endOffset,
 			   Oid startInRangeFunc, Oid endInRangeFunc,
-			   Oid inRangeColl, bool inRangeAsc, bool inRangeNullsFirst,
-			   List *runCondition, List *qual, bool topWindow, Plan *lefttree)
+			   Oid inRangeColl, bool inRangeAsc, bool inRangeNullsFirst, List *runCondition,
+			   RPSkipTo rpSkipTo, List *patternVariable, List *patternRegexp, List *defineClause,
+			   List *defineInitial,
+			   List *qual, bool topWindow, Plan *lefttree)
 {
 	WindowAgg  *node = makeNode(WindowAgg);
 	Plan	   *plan = &node->plan;
@@ -6658,6 +6667,11 @@ make_windowagg(List *tlist, Index winref,
 	node->inRangeAsc = inRangeAsc;
 	node->inRangeNullsFirst = inRangeNullsFirst;
 	node->topWindow = topWindow;
+	node->rpSkipTo = rpSkipTo,
+		node->patternVariable = patternVariable;
+	node->patternRegexp = patternRegexp;
+	node->defineClause = defineClause;
+	node->defineInitial = defineInitial;
 
 	plan->targetlist = tlist;
 	plan->lefttree = lefttree;
diff --git a/src/backend/optimizer/plan/planner.c b/src/backend/optimizer/plan/planner.c
index b5827d3980..ccb66336a8 100644
--- a/src/backend/optimizer/plan/planner.c
+++ b/src/backend/optimizer/plan/planner.c
@@ -870,6 +870,9 @@ subquery_planner(PlannerGlobal *glob, Query *parse, PlannerInfo *parent_root,
 												EXPRKIND_LIMIT);
 		wc->endOffset = preprocess_expression(root, wc->endOffset,
 											  EXPRKIND_LIMIT);
+		wc->defineClause = (List *) preprocess_expression(root,
+														  (Node *) wc->defineClause,
+														  EXPRKIND_TARGET);
 	}
 
 	parse->limitOffset = preprocess_expression(root, parse->limitOffset,
diff --git a/src/backend/optimizer/plan/setrefs.c b/src/backend/optimizer/plan/setrefs.c
index 7aed84584c..7d726729ae 100644
--- a/src/backend/optimizer/plan/setrefs.c
+++ b/src/backend/optimizer/plan/setrefs.c
@@ -210,7 +210,6 @@ static List *set_windowagg_runcondition_references(PlannerInfo *root,
 												   List *runcondition,
 												   Plan *plan);
 
-
 /*****************************************************************************
  *
  *		SUBPLAN REFERENCES
@@ -2471,6 +2470,32 @@ set_upper_references(PlannerInfo *root, Plan *plan, int rtoffset)
 					   NRM_EQUAL,
 					   NUM_EXEC_QUAL(plan));
 
+	/*
+	 * Modifies an expression tree in each DEFINE clause so that all Var
+	 * nodes's varno refers to OUTER_VAR.
+	 */
+	if (IsA(plan, WindowAgg))
+	{
+		WindowAgg  *wplan = (WindowAgg *) plan;
+
+		if (wplan->defineClause != NIL)
+		{
+			foreach(l, wplan->defineClause)
+			{
+				TargetEntry *tle = (TargetEntry *) lfirst(l);
+
+				tle->expr = (Expr *)
+					fix_upper_expr(root,
+								   (Node *) tle->expr,
+								   subplan_itlist,
+								   OUTER_VAR,
+								   rtoffset,
+								   NRM_EQUAL,
+								   NUM_EXEC_QUAL(plan));
+			}
+		}
+	}
+
 	pfree(subplan_itlist);
 }
 
diff --git a/src/backend/optimizer/prep/prepjointree.c b/src/backend/optimizer/prep/prepjointree.c
index 969e257f70..3cedb5c8e5 100644
--- a/src/backend/optimizer/prep/prepjointree.c
+++ b/src/backend/optimizer/prep/prepjointree.c
@@ -2175,6 +2175,15 @@ perform_pullup_replace_vars(PlannerInfo *root,
 	parse->returningList = (List *)
 		pullup_replace_vars((Node *) parse->returningList, rvcontext);
 
+	foreach(lc, parse->windowClause)
+	{
+		WindowClause *wc = lfirst_node(WindowClause, lc);
+
+		if (wc->defineClause != NIL)
+			wc->defineClause = (List *)
+				pullup_replace_vars((Node *) wc->defineClause, rvcontext);
+	}
+
 	if (parse->onConflict)
 	{
 		parse->onConflict->onConflictSet = (List *)
diff --git a/src/include/nodes/plannodes.h b/src/include/nodes/plannodes.h
index 62cd6a6666..b7b2ac4aaf 100644
--- a/src/include/nodes/plannodes.h
+++ b/src/include/nodes/plannodes.h
@@ -20,6 +20,7 @@
 #include "lib/stringinfo.h"
 #include "nodes/bitmapset.h"
 #include "nodes/lockoptions.h"
+#include "nodes/parsenodes.h"
 #include "nodes/primnodes.h"
 
 
@@ -1099,6 +1100,24 @@ typedef struct WindowAgg
 	/* nulls sort first for in_range tests? */
 	bool		inRangeNullsFirst;
 
+	/* Row Pattern Recognition AFTER MACH SKIP clause */
+	RPSkipTo	rpSkipTo;		/* Row Pattern Skip To type */
+
+	/* Row Pattern PATTERN variable name (list of String) */
+	List	   *patternVariable;
+
+	/*
+	 * Row Pattern RPATTERN regular expression quantifier ('+' or ''. list of
+	 * String)
+	 */
+	List	   *patternRegexp;
+
+	/* Row Pattern DEFINE clause (list of TargetEntry) */
+	List	   *defineClause;
+
+	/* Row Pattern DEFINE variable initial names (list of String) */
+	List	   *defineInitial;
+
 	/*
 	 * false for all apart from the WindowAgg that's closest to the root of
 	 * the plan
-- 
2.25.1


----Next_Part(Mon_Aug_26_13_39_47_2024_878)--
Content-Type: Text/X-Patch; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="v21-0005-Row-pattern-recognition-patch-executor.patch"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <alvherre@kurilemu.de>
  0 siblings, 0 replies; 390+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



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


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

Thread overview: 390+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2024-08-26 04:32 [PATCH v21 4/8] Row pattern recognition patch (planner). Tatsuo Ishii <ishii@postgresql.org>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <alvherre@kurilemu.de>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox