diff --git a/src/backend/replication/syncrep.c b/src/backend/replication/syncrep.c
index 088f7b6..6caf586 100644
--- a/src/backend/replication/syncrep.c
+++ b/src/backend/replication/syncrep.c
@@ -46,6 +46,7 @@
 #include <unistd.h>
 
 #include "access/xact.h"
+#include "access/transam.h"
 #include "miscadmin.h"
 #include "replication/syncrep.h"
 #include "replication/walsender.h"
@@ -382,7 +383,7 @@ SyncRepReleaseWaiters(void)
 	 */
 	if (MyWalSnd->sync_standby_priority == 0 ||
 		MyWalSnd->state < WALSNDSTATE_STREAMING ||
-		XLogRecPtrIsInvalid(MyWalSnd->flush))
+		XLByteEQ(MyWalSnd->flush, InvalidXLogRecPtr))
 		return;
 
 	/*
@@ -403,7 +404,7 @@ SyncRepReleaseWaiters(void)
 			walsnd->sync_standby_priority > 0 &&
 			(priority == 0 ||
 			 priority > walsnd->sync_standby_priority) &&
-			!XLogRecPtrIsInvalid(walsnd->flush))
+			!XLByteEQ(walsnd->flush, InvalidXLogRecPtr))
 		{
 			priority = walsnd->sync_standby_priority;
 			syncWalSnd = walsnd;
diff --git a/src/backend/replication/walsender.c b/src/backend/replication/walsender.c
index 064ddd5..6c27449 100644
--- a/src/backend/replication/walsender.c
+++ b/src/backend/replication/walsender.c
@@ -1559,14 +1559,14 @@ pg_stat_get_wal_senders(PG_FUNCTION_ARGS)
 			 * which always returns an invalid flush location, as an
 			 * asynchronous standby.
 			 */
-			sync_priority[i] = XLogRecPtrIsInvalid(walsnd->flush) ?
+			sync_priority[i] = XLByteEQ(walsnd->flush, InvalidXLogRecPtr) ?
 				0 : walsnd->sync_standby_priority;
 
 			if (walsnd->state == WALSNDSTATE_STREAMING &&
 				walsnd->sync_standby_priority > 0 &&
 				(priority == 0 ||
 				 priority > walsnd->sync_standby_priority) &&
-				!XLogRecPtrIsInvalid(walsnd->flush))
+				!XLByteEQ(walsnd->flush, InvalidXLogRecPtr))
 			{
 				priority = walsnd->sync_standby_priority;
 				sync_standby = i;
