From 3aacb0f9fee72723b55369ecf2ad491a57e2f54d Mon Sep 17 00:00:00 2001
From: Donghang Lin <donghanglin@gmail.com>
Date: Wed, 17 Apr 2024 17:14:50 -0700
Subject: [PATCH] Do not flip strategy if it's invalid

---
 src/backend/access/nbtree/nbtutils.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/backend/access/nbtree/nbtutils.c b/src/backend/access/nbtree/nbtutils.c
index 2eff34c4aa..c4db016065 100644
--- a/src/backend/access/nbtree/nbtutils.c
+++ b/src/backend/access/nbtree/nbtutils.c
@@ -3395,7 +3395,7 @@ _bt_fix_scankey_strategy(ScanKey skey, int16 *indoption)
 	}
 
 	/* Adjust strategy for DESC, if we didn't already */
-	if ((addflags & SK_BT_DESC) && !(skey->sk_flags & SK_BT_DESC))
+	if ((addflags & SK_BT_DESC) && !(skey->sk_flags & SK_BT_DESC) && skey->sk_strategy != InvalidStrategy)
 		skey->sk_strategy = BTCommuteStrategyNumber(skey->sk_strategy);
 	skey->sk_flags |= addflags;
 
-- 
2.40.1

