explain.depesz.com

PostgreSQL's explain analyze made readable

Result: MWmJ

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 127.115 ↑ 1.0 1 1

Finalize Aggregate (cost=28,241.92..28,241.93 rows=1 width=32) (actual time=127.115..127.115 rows=1 loops=1)

2. 28.861 138.998 ↓ 1.5 3 1

Gather (cost=28,241.70..28,241.91 rows=2 width=32) (actual time=127.095..138.998 rows=3 loops=1)

  • Workers Planned: 2
  • Workers Launched: 2
3. 10.877 110.137 ↑ 1.0 1 3 / 3

Partial Aggregate (cost=27,241.70..27,241.71 rows=1 width=32) (actual time=110.137..110.137 rows=1 loops=3)

4. 9.776 99.260 ↓ 3.4 5,345 3 / 3

Nested Loop (cost=538.85..27,237.78 rows=1,568 width=5) (actual time=2.403..99.260 rows=5,345 loops=3)

5. 22.765 24.856 ↓ 1.6 5,386 3 / 3

Parallel Bitmap Heap Scan on coupon c (cost=538.43..17,970.79 rows=3,280 width=8) (actual time=2.353..24.856 rows=5,386 loops=3)

  • Recheck Cond: ((playerid = '65e98a4a-a2f3-4d6d-9b80-7b923b743ed6'::uuid) AND ((state)::text = ANY ('{played,paid,won,lost}'::text[])))
  • Filter: ((status)::text = 'active'::text)
  • Heap Blocks: exact=1258
6. 2.091 2.091 ↓ 2.4 18,522 1 / 3

Bitmap Index Scan on couponplayeridfki (cost=0.00..536.46 rows=7,876 width=0) (actual time=6.272..6.272 rows=18,522 loops=1)

  • Index Cond: ((playerid = '65e98a4a-a2f3-4d6d-9b80-7b923b743ed6'::uuid) AND ((state)::text = ANY ('{played,paid,won,lost}'::text[])))
7. 64.628 64.628 ↑ 1.0 1 16,157 / 3

Index Scan using coupontransaction_couponnewid_uidx on coupontransaction ct (cost=0.42..2.82 rows=1 width=13) (actual time=0.012..0.012 rows=1 loops=16,157)

  • Index Cond: (couponnewid = c.newid)
Planning time : 0.751 ms
Execution time : 139.106 ms