explain.depesz.com

PostgreSQL's explain analyze made readable

Result: y45J

Settings
# exclusive inclusive rows x rows loops node
1. 0.040 0.171 ↑ 1.0 10 1

Limit (cost=0.42..118.61 rows=10 width=209) (actual time=0.106..0.171 rows=10 loops=1)

  • Output: transaction_id, platform, user_id, (CASE WHEN (lock_ts >= '2019-05-10 19:42:56.288599'::timestamp without time zone) THEN 'locked'::text ELSE (status)::text END), item, quantity, pending_ts, pending_ts, transaction_id, platform, NULL::timestamp without time zone, NULL::text, NULL::platform
  • Buffers: shared hit=10 read=4
2. 0.131 0.131 ↑ 51.0 10 1

Index Scan using unfulfilled_transaction on public.transaction (cost=0.42..6,028.17 rows=510 width=209) (actual time=0.101..0.131 rows=10 loops=1)

  • Output: transaction_id, platform, user_id, CASE WHEN (lock_ts >= '2019-05-10 19:42:56.288599'::timestamp without time zone) THEN 'locked'::text ELSE (status)::text END, item, quantity, pending_ts, pending_ts, transaction_id, platform, NULL::timestamp without time zone, NULL::text, NULL::platform
  • Index Cond: (transaction.pending_ts > '2019-05-10 23:45:18.798869'::timestamp without time zone)
  • Filter: ((transaction.user_id = COALESCE(transaction.user_id)) AND (transaction.status = 'pending'::rv_status) AND (transaction.game = 'test'::text))
  • Buffers: shared hit=10 read=4