explain.depesz.com

PostgreSQL's explain analyze made readable

Result: GTvW

Settings

Optimization(s) for this plan:

# exclusive inclusive rows x rows loops node
1. 0.000 0.088 ↓ 0.0 0 1

Update on judah.daily_well_values dwv (cost=50.09..63.39 rows=76 width=1,842) (actual time=0.088..0.088 rows=0 loops=1)

  • Buffers: shared hit=40
2.          

Initplan (for Update)

3. 0.020 0.020 ↑ 3.0 1 1

Seq Scan on judah.last_run (cost=0.00..13.03 rows=3 width=8) (actual time=0.020..0.020 rows=1 loops=1)

  • Output: last_run.last_run
  • Buffers: shared hit=13
4. 0.008 0.087 ↓ 0.0 0 1

Hash Join (cost=37.06..50.36 rows=76 width=1,842) (actual time=0.087..0.087 rows=0 loops=1)

  • Output: dwv.stop_id, dwv.client_day, dwv.item_id, dwv.first_production_date, dwv.last_production_date, dwv.tubing_pressure, dwv.casing_pressure, dwv.flowline_pressure, dwv.flow_rate, dwv.dehy_temp, dwv.differential_pressure, dwv.gas_temperature, dwv.gauge_time, dwv.hp_separator_pressure, dwv.hp_separator_temperature, dwv.line_heater_choke, dwv.line_heater_pressure, dwv.line_heater_temperature, dwv.line_pressure, dwv.lp_separator_pressure, dwv.lp_separator_temperature, dwv.spot_rate, dwv.wellhead_choke, dwv.bottom_hole_pressure, dwv.choke_setting, dwv.downtime, dwv.header_pressure, dwv.plunger_attempts, dwv.plunger_trips, dwv.volume_disposed, dwv.total_daily_run_time, dwv.on_time, dwv.off_time, dwv.afterflow_time, dwv.oil_production, dwv.oil_production_target, dwv.water_production, dwv.water_production_target, dwv.downtime_reason, dwv.downtime_category, dwv.downtime_reason_suffix, dwv.gas_production, dwv.gas_production_target, dwv.surface_casing_pressure, dwv.gross_boe, dwv.shrink, dwv.yield, dwv.purchaser_name, dwv.nri, dwv.working_interest, dwv.operator, (items.properties ->> 'OTC PUN'::text), (items.properties ->> 'API #'::text), (items.properties ->> 'Completion Id'::text), (items.properties ->> 'Budget Category'::text), (items.properties ->> 'Well Category'::text), (items.properties ->> 'PROPNUM'::text), (items.properties ->> 'SEQNUM'::text), dwv.oil_sales, dwv.water_hauled, dwv.stop_name, dwv.route_name, dwv.net_oil, dwv.net_gas, dwv.net_ngl, dwv.boe, (items.properties ->> 'Oil Purchaser'::text), (items.properties ->> 'Formation'::text), (items.properties ->> 'Legal Well Location'::text), dwv.allocated_buyback, dwv.additional_wi, dwv.ctid, items.ctid, stop_headers.ctid
  • Hash Cond: (dwv.item_id = items.id)
  • Buffers: shared hit=40
5. 0.011 0.011 ↑ 265.0 1 1

Seq Scan on judah.daily_well_values dwv (cost=0.00..9.65 rows=265 width=1,510) (actual time=0.011..0.011 rows=1 loops=1)

  • Output: dwv.stop_id, dwv.client_day, dwv.item_id, dwv.first_production_date, dwv.last_production_date, dwv.tubing_pressure, dwv.casing_pressure, dwv.flowline_pressure, dwv.flow_rate, dwv.dehy_temp, dwv.differential_pressure, dwv.gas_temperature, dwv.gauge_time, dwv.hp_separator_pressure, dwv.hp_separator_temperature, dwv.line_heater_choke, dwv.line_heater_pressure, dwv.line_heater_temperature, dwv.line_pressure, dwv.lp_separator_pressure, dwv.lp_separator_temperature, dwv.spot_rate, dwv.wellhead_choke, dwv.bottom_hole_pressure, dwv.choke_setting, dwv.downtime, dwv.header_pressure, dwv.plunger_attempts, dwv.plunger_trips, dwv.volume_disposed, dwv.total_daily_run_time, dwv.on_time, dwv.off_time, dwv.afterflow_time, dwv.oil_production, dwv.oil_production_target, dwv.water_production, dwv.water_production_target, dwv.downtime_reason, dwv.downtime_category, dwv.downtime_reason_suffix, dwv.gas_production, dwv.gas_production_target, dwv.surface_casing_pressure, dwv.gross_boe, dwv.shrink, dwv.yield, dwv.purchaser_name, dwv.nri, dwv.working_interest, dwv.operator, dwv.oil_sales, dwv.water_hauled, dwv.stop_name, dwv.route_name, dwv.net_oil, dwv.net_gas, dwv.net_ngl, dwv.boe, dwv.allocated_buyback, dwv.additional_wi, dwv.ctid
  • Buffers: shared hit=1
6. 0.000 0.068 ↓ 0.0 0 1

Hash (cost=37.03..37.03 rows=2 width=39) (actual time=0.068..0.068 rows=0 loops=1)

  • Output: items.properties, items.ctid, items.id, stop_headers.ctid
  • Buckets: 1,024 Batches: 1 Memory Usage: 8kB
  • Buffers: shared hit=39
7. 0.008 0.068 ↓ 0.0 0 1

Hash Right Join (cost=26.11..37.03 rows=2 width=39) (actual time=0.068..0.068 rows=0 loops=1)

  • Output: items.properties, items.ctid, items.id, stop_headers.ctid
  • Hash Cond: (stop_headers.stop_id = items.stop_id)
  • Buffers: shared hit=39
8. 0.000 0.000 ↓ 0.0 0

Seq Scan on judah.stop_headers (cost=0.00..10.60 rows=60 width=22) (never executed)

  • Output: stop_headers.ctid, stop_headers.stop_id
9. 0.001 0.060 ↓ 0.0 0 1

Hash (cost=26.09..26.09 rows=2 width=49) (actual time=0.059..0.060 rows=0 loops=1)

  • Output: items.properties, items.ctid, items.stop_id, items.id
  • Buckets: 1,024 Batches: 1 Memory Usage: 8kB
  • Buffers: shared hit=39
10. 0.059 0.059 ↓ 0.0 0 1

Seq Scan on judah.stg_items items (cost=0.00..26.09 rows=2 width=49) (actual time=0.059..0.059 rows=0 loops=1)

  • Output: items.properties, items.ctid, items.stop_id, items.id
  • Filter: (items.updated_at >= $0)
  • Rows Removed by Filter: 7
  • Buffers: shared hit=39