agora inbox for [email protected]  
help / color / mirror / Atom feed
Typed-tables patch broke pg_upgrade
971+ messages / 4 participants
[nested] [flat]

* Typed-tables patch broke pg_upgrade
@ 2011-02-09 23:43  Tom Lane <[email protected]>
  0 siblings, 2 replies; 971+ messages in thread

From: Tom Lane @ 2011-02-09 23:43 UTC (permalink / raw)
  To: Peter Eisentraut <[email protected]>; Bruce Momjian <[email protected]>; +Cc: pgsql-hackers

I find that pg_upgrade fails in HEAD when asked to do a 9.1-to-9.1
upgrade of the regression database.  It gets to this bit of the
restore script:

CREATE TABLE test_tbl2 OF public.test_type2;

-- For binary upgrade, recreate dropped column.
UPDATE pg_catalog.pg_attribute
SET attlen = -1, attalign = 'i', attbyval = false
WHERE attname = '........pg.dropped.2........'
  AND attrelid = 'test_tbl2'::pg_catalog.regclass;
ALTER TABLE ONLY test_tbl2 DROP COLUMN "........pg.dropped.2........";

and fails with 

ERROR:  cannot drop column from typed table

which probably is because test_type2 has a dropped column.

Somebody has failed to think through something, because if this state of
affairs was allowed to be created during the regression tests, why
should we not be able to restore it?

(pg_upgrade's ENUM support is broken too, but at least that one is a
one-line fix.)

			regards, tom lane



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

* Re: Typed-tables patch broke pg_upgrade
@ 2011-02-10 04:16  Bruce Momjian <[email protected]>
  parent: Tom Lane <[email protected]>
  1 sibling, 1 reply; 971+ messages in thread

From: Bruce Momjian @ 2011-02-10 04:16 UTC (permalink / raw)
  To: Tom Lane <[email protected]>; +Cc: Peter Eisentraut <[email protected]>; pgsql-hackers

Tom Lane wrote:
> I find that pg_upgrade fails in HEAD when asked to do a 9.1-to-9.1
> upgrade of the regression database.  It gets to this bit of the
> restore script:
> 
> CREATE TABLE test_tbl2 OF public.test_type2;
> 
> -- For binary upgrade, recreate dropped column.
> UPDATE pg_catalog.pg_attribute
> SET attlen = -1, attalign = 'i', attbyval = false
> WHERE attname = '........pg.dropped.2........'
>   AND attrelid = 'test_tbl2'::pg_catalog.regclass;
> ALTER TABLE ONLY test_tbl2 DROP COLUMN "........pg.dropped.2........";
> 
> and fails with 
> 
> ERROR:  cannot drop column from typed table
> 
> which probably is because test_type2 has a dropped column.
> 
> Somebody has failed to think through something, because if this state of
> affairs was allowed to be created during the regression tests, why
> should we not be able to restore it?

I am not aware of this code changing in 9.1.  Was this test in 9.0? 
Does this problem happen for 9.0?

-- 
  Bruce Momjian  <[email protected]>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + It's impossible for everything to be true. +



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

* Re: Typed-tables patch broke pg_upgrade
@ 2011-02-10 04:31  Peter Eisentraut <[email protected]>
  parent: Tom Lane <[email protected]>
  1 sibling, 0 replies; 971+ messages in thread

From: Peter Eisentraut @ 2011-02-10 04:31 UTC (permalink / raw)
  To: Tom Lane <[email protected]>; +Cc: Bruce Momjian <[email protected]>; pgsql-hackers

On ons, 2011-02-09 at 18:43 -0500, Tom Lane wrote:
> I find that pg_upgrade fails in HEAD when asked to do a 9.1-to-9.1
> upgrade of the regression database.  It gets to this bit of the
> restore script:
> 
> CREATE TABLE test_tbl2 OF public.test_type2;
> 
> -- For binary upgrade, recreate dropped column.
> UPDATE pg_catalog.pg_attribute
> SET attlen = -1, attalign = 'i', attbyval = false
> WHERE attname = '........pg.dropped.2........'
>   AND attrelid = 'test_tbl2'::pg_catalog.regclass;
> ALTER TABLE ONLY test_tbl2 DROP COLUMN "........pg.dropped.2........";
> 
> and fails with 
> 
> ERROR:  cannot drop column from typed table
> 
> which probably is because test_type2 has a dropped column.

It should call

ALTER TYPE test_type2 DROP ATTRIBUTE xyz CASCADE;

instead.  That will propagate to the table.

I'm not sure though, whether a composite type preserves the dropped
attribute for re-dropping in this case.





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

* Re: Typed-tables patch broke pg_upgrade
@ 2011-02-10 04:32  Peter Eisentraut <[email protected]>
  parent: Bruce Momjian <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Peter Eisentraut @ 2011-02-10 04:32 UTC (permalink / raw)
  To: Bruce Momjian <[email protected]>; +Cc: Tom Lane <[email protected]>; pgsql-hackers

On ons, 2011-02-09 at 23:16 -0500, Bruce Momjian wrote:
> I am not aware of this code changing in 9.1.  Was this test in 9.0? 
> Does this problem happen for 9.0?

No, because you can't drop anything from a typed table in 9.0.




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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

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

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


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



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

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

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

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread

* [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid
@ 2026-03-12 15:09  Álvaro Herrera <[email protected]>
  0 siblings, 0 replies; 971+ messages in thread

From: Álvaro Herrera @ 2026-03-12 15:09 UTC (permalink / raw)

---
 src/backend/commands/cluster.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c
index af47354e382..29440fb75cd 100644
--- a/src/backend/commands/cluster.c
+++ b/src/backend/commands/cluster.c
@@ -2814,7 +2814,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 		 * Whether we could read new record or not, keep checking if
 		 * 'lsn_upto' was specified.
 		 */
-		if (XLogRecPtrIsInvalid(lsn_upto))
+		if (!XLogRecPtrIsValid(lsn_upto))
 		{
 			SpinLockAcquire(&shared->mutex);
 			lsn_upto = shared->lsn_upto;
@@ -2822,7 +2822,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			done = shared->done;
 			SpinLockRelease(&shared->mutex);
 		}
-		if (!XLogRecPtrIsInvalid(lsn_upto) &&
+		if (XLogRecPtrIsValid(lsn_upto) &&
 			ctx->reader->EndRecPtr >= lsn_upto)
 			break;
 
@@ -2846,7 +2846,7 @@ decode_concurrent_changes(LogicalDecodingContext *ctx,
 			 * If lsn_upto is valid, WAL records having LSN lower than that
 			 * should already have been flushed to disk.
 			 */
-			if (XLogRecPtrIsInvalid(lsn_upto))
+			if (!XLogRecPtrIsValid(lsn_upto))
 				timeout = 100L;
 			res = WaitForLSN(WAIT_LSN_TYPE_PRIMARY_FLUSH,
 							 ctx->reader->EndRecPtr + 1,
@@ -4039,7 +4039,7 @@ repack_worker_internal(dsm_segment *seg)
 	 * anything in the shared memory until we have serialized the snapshot.
 	 */
 	SpinLockAcquire(&shared->mutex);
-	Assert(XLogRecPtrIsInvalid(shared->lsn_upto));
+	Assert(!XLogRecPtrIsValid(shared->lsn_upto));
 	sfs = &shared->sfs;
 	SpinLockRelease(&shared->mutex);
 
-- 
2.47.3


--pnppmxqkefjd4hu2
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment;
	filename="0005-document-store_change-somewhat-more.nocfbot.txt"



^ permalink  raw  reply  [nested|flat] 971+ messages in thread


end of thread, other threads:[~2026-03-12 15:09 UTC | newest]

Thread overview: 971+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2011-02-09 23:43 Typed-tables patch broke pg_upgrade Tom Lane <[email protected]>
2011-02-10 04:16 ` Bruce Momjian <[email protected]>
2011-02-10 04:32   ` Peter Eisentraut <[email protected]>
2011-02-10 04:31 ` Peter Eisentraut <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>
2026-03-12 15:09 [PATCH 4/9] XLogRecPtrIsInvalid -> XLogRecPtrIsValid Álvaro Herrera <[email protected]>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox