Hash Join (cost=53933.69..255802.87 rows=1395542 width=216) (actual time=422.466..2868.948 rows=1394633 loops=1)" Output: ci.conversation_uuid, ci.item_uuid, ci.tenant_id, it.item_subject, it.item_body_start" Inner Unique: true" Hash Cond: (it.item_uuid = ci.item_uuid)" Buffers: shared hit=12283 read=95974 dirtied=77, temp read=44113 written=44113" I/O Timings: shared/local read=462.195, temp read=86.413 write=423.363" WAL: records=1 bytes=58" -> Seq Scan on item_text it (cost=0.00..110641.18 rows=1401518 width=196) (actual time=0.012..854.842 rows=1394633 loops=1)" Output: it.item_subject, it.item_body_start, it.item_uuid" Buffers: shared hit=652 read=95974 dirtied=77" I/O Timings: shared/local read=462.195" WAL: records=1 bytes=58" -> Hash (cost=25586.42..25586.42 rows=1395542 width=36) (actual time=422.386..422.387 rows=1394633 loops=1)" Output: ci.conversation_uuid, ci.item_uuid, ci.tenant_id" Buckets: 131072 Batches: 16 Memory Usage: 6799kB" Buffers: shared hit=11631, temp written=8932" I/O Timings: temp write=78.785" -> Seq Scan on conversation_item ci (cost=0.00..25586.42 rows=1395542 width=36) (actual time=0.004..133.304 rows=1394633 loops=1)" Output: ci.conversation_uuid, ci.item_uuid, ci.tenant_id" Buffers: shared hit=11631" Settings: effective_cache_size = '16053152kB', jit = 'off', random_page_cost = '8'" Query Identifier: 5005100605804837348" Planning:" Buffers: shared hit=398 read=7" I/O Timings: shared/local read=1.400" Planning Time: 2.379 ms" Execution Time: 2956.264 ms" Generated with: EXPLAIN(ANALYZE, VERBOSE, COSTS, SETTINGS, BUFFERS, WAL, TIMING, SUMMARY) SELECT ci.conversation_uuid, ci.item_uuid, ci.tenant_id, it.item_subject, it.item_body_start FROM conversation_item AS ci INNER JOIN item_text AS it ON it.item_uuid = ci.item_uuid;