From e458382a471831a759885a2dcdbe58422d2c365a Mon Sep 17 00:00:00 2001
From: Thomas Munro <thomas.munro@gmail.com>
Date: Wed, 9 Apr 2025 16:10:33 +1200
Subject: [PATCH v2 4/4] Use READ_STREAM_OUT_OF_ORDER for Bitmap Heap Scan.

Bitmap Heap Scan can process blocks in any order, so we should
prioritize cached data while IOs are running.
---
 src/backend/access/heap/heapam.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/backend/access/heap/heapam.c b/src/backend/access/heap/heapam.c
index ed2e3021799..cd4f8967a27 100644
--- a/src/backend/access/heap/heapam.c
+++ b/src/backend/access/heap/heapam.c
@@ -1205,6 +1205,7 @@ heap_beginscan(Relation relation, Snapshot snapshot,
 	else if (scan->rs_base.rs_flags & SO_TYPE_BITMAPSCAN)
 	{
 		scan->rs_read_stream = read_stream_begin_relation(READ_STREAM_DEFAULT |
+														  READ_STREAM_OUT_OF_ORDER |
 														  READ_STREAM_USE_BATCHING,
 														  scan->rs_strategy,
 														  scan->rs_base.rs_rd,
-- 
2.39.5

