はじめに PostgreSQL の実行計画において、Bitmap Index Scan の後に実行される Bitmap Heap Scan で "Recheck cond" と出力されます。Index Scan をしているにも関わらず、なぜ Heap Scan でインデックスの検索条件を再チェックする必要があるのか解説します。 事前に以下の資料を一読頂くことをお勧めします。 Explain説明資料(第20回しくみ勉強会).pdf 特に「Bitmap Scanについて」「work_mem と lossy storage」をご確認ください。 本エントリの内容を適用できるPostgreSQLのバージョン範囲を特定できていませんが、9.4系や10系で適用できることを確認しています。実際にはもっと幅広く適用できると思われます。 解説編 本件に関し、海外のQAサイトで丁寧な解説がありました。 post