explain.depesz.com

PostgreSQL's explain analyze made readable

Result: W1IR : BEPDT - RR

Settings
# exclusive inclusive rows x rows loops node
1. 14,402.209 1,025,555.225 ↑ 2.1 455,983 1

Sort (cost=2,016,012.99..2,018,410.33 rows=958,936 width=322) (actual time=1,025,206.224..1,025,555.225 rows=455,983 loops=1)

  • Sort Key: ((pj.name)::character varying(255)) COLLATE "en_US", ((tk.name)::character varying(255)) COLLATE "en_US", ((tk.code)::character varying(50)) COLLATE "en_US", ((ui.lastname)::character varying(50)) COLLATE "en_US", ((ui.firstname)::character var (...)
  • Sort Method: quicksort Memory: 223601kB
  • Buffers: shared hit=533706052 read=129103 written=16876
2.          

CTE dmv_timesheetday_facts0cte

3. 4,870.728 1,003,027.930 ↑ 2.1 455,983 1

HashAggregate (cost=1,805,304.46..1,819,688.50 rows=958,936 width=123) (actual time=1,002,127.921..1,003,027.930 rows=455,983 loops=1)

  • Group Key: ts_2.userid, pbrh.hourlyrate, upper((dmv_timesheetday_g42.timeentryinfo1)::text), dmv_timesheetday_g42.timeallocationid, ui_1.duplicatename, ts_3.enddate, dmv_timesheetday_g42.projectid, dmv_timesheetday_g42.taskid, pbrh.currencyid, ts (...)
  • Buffers: shared hit=533415735 read=98439 written=14360
4.          

Initplan (forHashAggregate)

5. 3.163 3.163 ↑ 1.0 1 1

Seq Scan on projectsysteminformation (cost=0.00..1.01 rows=1 width=16) (actual time=3.163..3.163 rows=1 loops=1)

  • Buffers: shared read=1
6. 0.002 0.002 ↑ 1.0 1 1

Seq Scan on projectsysteminformation projectsysteminformation_1 (cost=0.00..1.01 rows=1 width=16) (actual time=0.002..0.002 rows=1 loops=1)

  • Buffers: shared hit=1
7. 1,624.627 998,154.037 ↑ 2.1 455,983 1

Hash Join (cost=382,256.27..1,759,752.98 rows=958,936 width=123) (actual time=36,488.463..998,154.037 rows=455,983 loops=1)

  • Hash Cond: (ts_2.id = ts_3.id)
  • Buffers: shared hit=533415735 read=98439 written=14360
8. 741.910 987,598.686 ↑ 2.1 455,983 1

Hash Join (cost=372,459.38..1,734,373.37 rows=958,936 width=135) (actual time=27,556.771..987,598.686 rows=455,983 loops=1)

  • Hash Cond: (dmv_timesheetday_g42.timesheetid = ts_2.id)
  • Buffers: shared hit=533021876 read=75513 written=9866
9. 984.978 986,479.066 ↑ 2.1 458,263 1

Hash Right Join (cost=367,061.74..1,715,775.64 rows=962,864 width=114) (actual time=27,178.370..986,479.066 rows=458,263 loops=1)

  • Hash Cond: (dm_attendancetimeallocation_facts.id = dmv_timesheetday_g42.timeallocationid)
  • Buffers: shared hit=533020664 read=75472 written=9866
10. 1,068.916 958,998.660 ↑ 2.5 469,753 1

Nested Loop (cost=1.12..1,334,759.27 rows=1,153,896 width=42) (actual time=219.119..958,998.660 rows=469,753 loops=1)

  • Buffers: shared hit=533020510 read=17337 written=810
11. 1,258.456 952,762.461 ↓ 5.9 469,753 1

Nested Loop (cost=0.70..1,259,950.98 rows=79,918 width=50) (actual time=209.059..952,762.461 rows=469,753 loops=1)

  • Join Filter: (dm_attendancetimeallocation_facts.billingrateid = br.id)
  • Rows Removed by Join Filter: 469753
  • Buffers: shared hit=531359551 read=16703 written=757
12. 445.168 951,034.252 ↓ 5.0 469,753 1

Nested Loop (cost=0.70..1,257,149.54 rows=93,347 width=82) (actual time=209.039..951,034.252 rows=469,753 loops=1)

  • Buffers: shared hit=531359550 read=16703 written=757
13. 9.844 9.844 ↓ 2.0 1,420 1

Seq Scan on projectbillingrate pbr (cost=0.00..35.27 rows=710 width=40) (actual time=4.505..9.844 rows=1,420 loops=1)

  • Filter: ((billingrateid = $0) OR ((billingrateid <> $1) AND (userid IS NULL)))
  • Buffers: shared hit=3 read=13
14. 645.990 950,579.240 ↓ 2.9 331 1,420

Nested Loop (cost=0.70..1,769.44 rows=114 width=86) (actual time=255.573..669.422 rows=331 loops=1,420)

  • Buffers: shared hit=531359547 read=16690 written=757
15. 49.700 49.700 ↑ 1.0 1 1,420

Index Scan using ixpbrhprojectbillingrateid on projectbillingratehistory pbrh (cost=0.28..0.34 rows=1 width=34) (actual time=0.030..0.035 rows=1 loops=1,420)

  • Index Cond: (projectbillingrateid = pbr.id)
  • Buffers: shared hit=4247 read=47 written=4
16. 949,883.550 949,883.550 ↓ 2.1 244 1,925

Index Scan using ixata2projectid on dm_attendancetimeallocation_facts (cost=0.42..1,767.96 rows=114 width=60) (actual time=214.852..493.446 rows=244 loops=1,925)

  • Index Cond: ((projectid = pbr.projectid) AND (entrydate >= pbrh.effectivedate) AND (entrydate <= pbrh.enddate))
  • Filter: ((pbr.billingrateid = billingrateid) AND (((pbr.billingrateid = $0) AND (userid = pbr.userid)) OR ((pbr.billingrateid <> $1) AND (pbr.userid IS NULL))))
  • Rows Removed by Filter: 355424
  • Buffers: shared hit=531355300 read=16643 written=753
17. 469.748 469.753 ↑ 1.0 2 469,753

Materialize (cost=0.00..1.03 rows=2 width=16) (actual time=0.000..0.001 rows=2 loops=469,753)

  • Buffers: shared hit=1
18. 0.005 0.005 ↑ 1.0 2 1

Seq Scan on billingrate br (cost=0.00..1.02 rows=2 width=16) (actual time=0.004..0.005 rows=2 loops=1)

  • Buffers: shared hit=1
19. 5,167.283 5,167.283 ↑ 9.0 1 469,753

Index Only Scan using ixtsuseridstartdateenddate on timesheet dmvts (cost=0.42..0.85 rows=9 width=12) (actual time=0.010..0.011 rows=1 loops=469,753)

  • Index Cond: ((userid = dm_attendancetimeallocation_facts.userid) AND (startdate <= dm_attendancetimeallocation_facts.entrydate) AND (enddate >= dm_attendancetimeallocation_facts.entrydate))
  • Heap Fetches: 32971
  • Buffers: shared hit=1660959 read=634 written=53
20. 714.473 26,495.428 ↓ 1.0 458,263 1

Hash (cost=361,340.30..361,340.30 rows=457,626 width=88) (actual time=26,495.428..26,495.428 rows=458,263 loops=1)

  • Buckets: 524288 Batches: 1 Memory Usage: 50489kB
  • Buffers: shared hit=154 read=58135 written=9056
21. 549.763 25,780.955 ↓ 1.0 458,263 1

Subquery Scan on dmv_timesheetday_g42 (cost=23,457.71..361,340.30 rows=457,626 width=88) (actual time=3,404.677..25,780.955 rows=458,263 loops=1)

  • Buffers: shared hit=154 read=58135 written=9056
22. 11,835.128 25,231.192 ↓ 1.0 458,263 1

Hash Left Join (cost=23,457.71..356,764.04 rows=457,626 width=124) (actual time=3,404.676..25,231.192 rows=458,263 loops=1)

  • Hash Cond: (at.projectid = pj_1.id)
  • Join Filter: ((at.entrydate >= pc.effectivedate) AND (at.entrydate <= pc.enddate))
  • Buffers: shared hit=154 read=58135 written=9056
23. 531.218 13,396.030 ↓ 1.0 458,263 1

Hash Left Join (cost=23,455.66..113,328.59 rows=457,626 width=96) (actual time=2,551.330..13,396.030 rows=458,263 loops=1)

  • Hash Cond: ((at.projectid = pj_2.id) AND (at.userspecifiedclientid = pc_1.clientid))
  • Join Filter: ((at.entrydate >= pc_1.effectivedate) AND (at.entrydate <= pc_1.enddate))
  • Buffers: shared hit=5 read=57661 written=8994
24. 1,200.880 12,864.798 ↓ 1.0 458,263 1

Hash Right Join (cost=23,453.61..109,894.33 rows=457,626 width=100) (actual time=2,551.296..12,864.798 rows=458,263 loops=1)

  • Hash Cond: (isbillable.factid = at.id)
  • Buffers: shared hit=4 read=57661 written=8994
25. 9,197.414 9,197.414 ↓ 38.0 482,495 1

Seq Scan on dm_attendancetimeallocation_metadata isbillable (cost=0.00..86,286.99 rows=12,710 width=17) (actual time=20.956..9,197.414 rows=482,495 loops=1)

  • Filter: (upper(key) = 'URN:REPLICON:TIME-ENTRY-METADATA-KEY:IS-BILLABLE'::text)
  • Rows Removed by Filter: 2057413
  • Buffers: shared read=48158 written=8362
26. 497.698 2,466.504 ↓ 1.0 458,263 1

Hash (cost=17,733.28..17,733.28 rows=457,626 width=99) (actual time=2,466.504..2,466.504 rows=458,263 loops=1)

  • Buckets: 524288 Batches: 1 Memory Usage: 55643kB
  • Buffers: shared hit=4 read=9503 written=632
27. 1,968.806 1,968.806 ↓ 1.0 458,263 1

Seq Scan on dm_attendancetimeallocation_facts at (cost=0.00..17,733.28 rows=457,626 width=99) (actual time=5.691..1,968.806 rows=458,263 loops=1)

  • Filter: ((entrydate >= '2016-04-01'::date) AND (entrydate <= '2020-03-31'::date))
  • Rows Removed by Filter: 90542
  • Buffers: shared hit=4 read=9503 written=632
28. 0.002 0.014 ↓ 0.0 0 1

Hash (cost=2.04..2.04 rows=1 width=16) (actual time=0.014..0.014 rows=0 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 8kB
  • Buffers: shared hit=1
29. 0.000 0.012 ↓ 0.0 0 1

Nested Loop (cost=0.00..2.04 rows=1 width=16) (actual time=0.012..0.012 rows=0 loops=1)

  • Join Filter: (pj_2.id = pc_1.projectid)
  • Buffers: shared hit=1
30. 0.012 0.012 ↓ 0.0 0 1

Seq Scan on project pj_2 (cost=0.00..1.01 rows=1 width=4) (actual time=0.012..0.012 rows=0 loops=1)

  • Filter: (clientbillingallocationmethod = 1)
  • Rows Removed by Filter: 1
  • Buffers: shared hit=1
31. 0.000 0.000 ↓ 0.0 0

Seq Scan on projectclient pc_1 (cost=0.00..1.01 rows=1 width=16) (never executed)

32. 0.006 0.034 ↑ 1.0 1 1

Hash (cost=2.04..2.04 rows=1 width=44) (actual time=0.034..0.034 rows=1 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
  • Buffers: shared hit=2
33. 0.010 0.028 ↑ 1.0 1 1

Nested Loop (cost=0.00..2.04 rows=1 width=44) (actual time=0.026..0.028 rows=1 loops=1)

  • Join Filter: (pj_1.id = pc.projectid)
  • Buffers: shared hit=2
34. 0.007 0.007 ↑ 1.0 1 1

Seq Scan on project pj_1 (cost=0.00..1.01 rows=1 width=4) (actual time=0.007..0.007 rows=1 loops=1)

  • Filter: (clientbillingallocationmethod = 0)
  • Buffers: shared hit=1
35. 0.011 0.011 ↑ 1.0 1 1

Seq Scan on projectclient pc (cost=0.00..1.01 rows=1 width=44) (actual time=0.011..0.011 rows=1 loops=1)

  • Buffers: shared hit=1
36. 127.386 377.710 ↓ 1.0 113,458 1

Hash (cost=3,979.58..3,979.58 rows=113,444 width=21) (actual time=377.710..377.710 rows=113,458 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 6897kB
  • Buffers: shared hit=1212 read=41
37. 160.598 250.324 ↓ 1.0 113,458 1

Hash Join (cost=76.29..3,979.58 rows=113,444 width=21) (actual time=21.196..250.324 rows=113,458 loops=1)

  • Hash Cond: (ts_2.userid = ui_1.id)
  • Buffers: shared hit=1212 read=41
38. 76.610 76.610 ↓ 1.0 113,458 1

Seq Scan on timesheet ts_2 (cost=0.00..2,343.44 rows=113,444 width=20) (actual time=0.008..76.610 rows=113,458 loops=1)

  • Buffers: shared hit=1209
39. 0.800 13.116 ↓ 1.0 1,437 1

Hash (cost=58.35..58.35 rows=1,435 width=5) (actual time=13.116..13.116 rows=1,437 loops=1)

  • Buckets: 2048 Batches: 1 Memory Usage: 73kB
  • Buffers: shared hit=3 read=41
40. 12.316 12.316 ↓ 1.0 1,437 1

Seq Scan on userinfo ui_1 (cost=0.00..58.35 rows=1,435 width=5) (actual time=4.009..12.316 rows=1,437 loops=1)

  • Buffers: shared hit=3 read=41
41. 92.631 8,930.724 ↓ 1.0 113,458 1

Hash (cost=8,378.85..8,378.85 rows=113,444 width=36) (actual time=8,930.724..8,930.724 rows=113,458 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 8559kB
  • Buffers: shared hit=393859 read=22926 written=4494
42. 220.022 8,838.093 ↓ 1.0 113,458 1

Merge Join (cost=0.83..8,378.85 rows=113,444 width=36) (actual time=1.543..8,838.093 rows=113,458 loops=1)

  • Merge Cond: (ts_3.id = tslist_1.timesheetid)
  • Buffers: shared hit=393859 read=22926 written=4494
43. 2,654.545 2,654.545 ↓ 1.0 113,458 1

Index Scan using timesheet_pkey on timesheet ts_3 (cost=0.42..3,541.08 rows=113,444 width=20) (actual time=0.015..2,654.545 rows=113,458 loops=1)

  • Buffers: shared hit=112330 read=1828 written=256
44. 5,963.526 5,963.526 ↓ 1.0 113,460 1

Index Only Scan using dm_timesheetlist_facts_pkey on dm_timesheetlist_facts tslist_1 (cost=0.42..3,136.11 rows=113,446 width=16) (actual time=1.518..5,963.526 rows=113,460 loops=1)

  • Heap Fetches: 301252
  • Buffers: shared hit=281529 read=21098 written=4238
45.          

Initplan (forSort)

46. 1.781 1.781 ↑ 1.0 1 1

Seq Scan on systeminformation (cost=0.00..1.01 rows=1 width=4) (actual time=1.780..1.781 rows=1 loops=1)

  • Buffers: shared read=1
47. 647.905 1,011,151.235 ↑ 2.1 455,983 1

Hash Left Join (cost=34,737.61..101,048.04 rows=958,936 width=322) (actual time=1,006,235.461..1,011,151.235 rows=455,983 loops=1)

  • Hash Cond: (dmv_timesheetday_facts8.currencyid10 = currencyinfo11.id)
  • Buffers: shared hit=533706034 read=129103 written=16876
48. 751.910 1,010,503.299 ↑ 2.1 455,983 1

Hash Join (cost=34,736.45..97,115.24 rows=958,936 width=322) (actual time=1,006,235.397..1,010,503.299 rows=455,983 loops=1)

  • Hash Cond: (dmv_timesheetday_facts8.timesheetid11 = ts.id)
  • Buffers: shared hit=533706034 read=129102 written=16876
49. 500.533 1,005,668.891 ↑ 2.1 455,983 1

Hash Left Join (cost=264.96..49,458.38 rows=958,936 width=330) (actual time=1,002,152.229..1,005,668.891 rows=455,983 loops=1)

  • Hash Cond: (dmv_timesheetday_facts8.projectid8 = pj.id)
  • Buffers: shared hit=533415737 read=98580 written=14360
50. 545.203 1,005,168.350 ↑ 2.1 455,983 1

Hash Left Join (cost=263.94..45,813.40 rows=958,936 width=304) (actual time=1,002,152.194..1,005,168.350 rows=455,983 loops=1)

  • Hash Cond: (dmv_timesheetday_facts8.taskid9 = tk.id)
  • Buffers: shared hit=533415736 read=98580 written=14360
51. 655.081 1,004,620.287 ↑ 2.1 455,983 1

Hash Join (cost=234.33..32,598.42 rows=958,936 width=256) (actual time=1,002,149.309..1,004,620.287 rows=455,983 loops=1)

  • Hash Cond: (dmv_timesheetday_facts8.userid2 = ui.id)
  • Buffers: shared hit=533415735 read=98569 written=14360
52. 1,003,943.869 1,003,943.869 ↑ 2.1 455,983 1

CTE Scan on dmv_timesheetday_facts0cte dmv_timesheetday_facts8 (cost=0.00..19,178.72 rows=958,936 width=153) (actual time=1,002,127.930..1,003,943.869 rows=455,983 loops=1)

  • Buffers: shared hit=533415735 read=98439 written=14360
53. 1.392 21.337 ↓ 1.0 1,437 1

Hash (cost=216.39..216.39 rows=1,435 width=107) (actual time=21.337..21.337 rows=1,437 loops=1)

  • Buckets: 2048 Batches: 1 Memory Usage: 219kB
  • Buffers: shared read=130
54. 1.258 19.945 ↓ 1.0 1,437 1

Hash Join (cost=77.58..216.39 rows=1,435 width=107) (actual time=11.648..19.945 rows=1,437 loops=1)

  • Hash Cond: (ui.employeetypeid = employeetype10.id)
  • Buffers: shared read=130
55. 1.540 15.382 ↓ 1.0 1,437 1

Hash Join (cost=76.29..195.37 rows=1,435 width=93) (actual time=8.321..15.382 rows=1,437 loops=1)

  • Hash Cond: (login.userid = ui.id)
  • Buffers: shared read=129
56. 6.042 6.042 ↓ 1.0 1,437 1

Seq Scan on login (cost=0.00..99.35 rows=1,435 width=17) (actual time=0.482..6.042 rows=1,437 loops=1)

  • Buffers: shared read=85
57. 1.052 7.800 ↓ 1.0 1,437 1

Hash (cost=58.35..58.35 rows=1,435 width=76) (actual time=7.800..7.800 rows=1,437 loops=1)

  • Buckets: 2048 Batches: 1 Memory Usage: 176kB
  • Buffers: shared read=44
58. 6.748 6.748 ↓ 1.0 1,437 1

Seq Scan on userinfo ui (cost=0.00..58.35 rows=1,435 width=76) (actual time=4.636..6.748 rows=1,437 loops=1)

  • Buffers: shared read=44
59. 0.014 3.305 ↑ 1.0 13 1

Hash (cost=1.13..1.13 rows=13 width=22) (actual time=3.305..3.305 rows=13 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
  • Buffers: shared read=1
60. 3.291 3.291 ↑ 1.0 13 1

Seq Scan on employeetype employeetype10 (cost=0.00..1.13 rows=13 width=22) (actual time=3.285..3.291 rows=13 loops=1)

  • Buffers: shared read=1
61. 0.315 2.860 ↑ 1.0 455 1

Hash (cost=23.92..23.92 rows=455 width=52) (actual time=2.860..2.860 rows=455 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 46kB
  • Buffers: shared hit=1 read=11
62. 0.407 2.545 ↑ 1.0 455 1

Hash Left Join (cost=2.44..23.92 rows=455 width=52) (actual time=1.877..2.545 rows=455 loops=1)

  • Hash Cond: (tk.estimatedcostcurrencyid = exchangerate.fixedcurrencyid)
  • Buffers: shared hit=1 read=11
63. 0.296 0.296 ↑ 1.0 455 1

Seq Scan on task tk (cost=0.00..14.55 rows=455 width=56) (actual time=0.019..0.296 rows=455 loops=1)

  • Buffers: shared read=10
64. 0.009 1.842 ↑ 1.0 7 1

Hash (cost=2.35..2.35 rows=7 width=4) (actual time=1.842..1.842 rows=7 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
  • Buffers: shared hit=1 read=1
65. 1.833 1.833 ↑ 1.0 7 1

Seq Scan on exchangerate (cost=0.00..2.35 rows=7 width=4) (actual time=1.816..1.833 rows=7 loops=1)

  • Filter: ((variablecurrencyid = $11) AND (('now'::cstring)::date >= effectivedate) AND (('now'::cstring)::date <= enddate))
  • Rows Removed by Filter: 42
  • Buffers: shared hit=1 read=1
66. 0.004 0.008 ↑ 1.0 1 1

Hash (cost=1.01..1.01 rows=1 width=34) (actual time=0.008..0.008 rows=1 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
  • Buffers: shared hit=1
67. 0.004 0.004 ↑ 1.0 1 1

Seq Scan on project pj (cost=0.00..1.01 rows=1 width=34) (actual time=0.003..0.004 rows=1 loops=1)

  • Buffers: shared hit=1
68. 68.624 4,082.498 ↓ 1.0 113,458 1

Hash (cost=33,053.43..33,053.43 rows=113,444 width=40) (actual time=4,082.498..4,082.498 rows=113,458 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 8995kB
  • Buffers: shared hit=290297 read=30522 written=2516
69. 136.511 4,013.874 ↓ 1.0 113,458 1

Hash Right Join (cost=15,884.55..33,053.43 rows=113,444 width=40) (actual time=3,101.445..4,013.874 rows=113,458 loops=1)

  • Hash Cond: (tahls.timesheetid = ts.id)
  • Buffers: shared hit=290297 read=30522 written=2516
70. 124.185 1,061.059 ↓ 1.0 112,594 1

Hash Join (cost=7,296.65..22,926.42 rows=111,936 width=24) (actual time=284.529..1,061.059 rows=112,594 loops=1)

  • Hash Cond: (tahls.timesheetid = ts_1.id)
  • Buffers: shared hit=98 read=8793 written=447
71. 299.984 780.460 ↑ 1.0 112,602 1

Hash Join (cost=3,262.92..17,350.18 rows=112,841 width=24) (actual time=127.431..780.460 rows=112,602 loops=1)

  • Hash Cond: (ta.serialnumber = tahls.lastsubmitserialnumber)
  • Buffers: shared read=7682 written=276
72. 354.238 354.238 ↑ 1.0 436,249 1

Seq Scan on timesheetapprovalhistory ta (cost=0.00..11,322.25 rows=436,425 width=12) (actual time=0.510..354.238 rows=436,249 loops=1)

  • Buffers: shared read=6958 written=275
73. 63.529 126.238 ↑ 1.0 112,602 1

Hash (cost=1,852.41..1,852.41 rows=112,841 width=20) (actual time=126.238..126.238 rows=112,602 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 6743kB
  • Buffers: shared read=724 written=1
74. 62.709 62.709 ↑ 1.0 112,602 1

Seq Scan on timesheetapprovalhistorylastsubmit tahls (cost=0.00..1,852.41 rows=112,841 width=20) (actual time=0.479..62.709 rows=112,602 loops=1)

  • Buffers: shared read=724 written=1
75. 64.194 156.414 ↓ 1.0 112,602 1

Hash (cost=2,627.05..2,627.05 rows=112,534 width=16) (actual time=156.414..156.414 rows=112,602 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 6303kB
  • Buffers: shared hit=98 read=1111 written=171
76. 92.220 92.220 ↓ 1.0 112,602 1

Seq Scan on timesheet ts_1 (cost=0.00..2,627.05 rows=112,534 width=16) (actual time=0.448..92.220 rows=112,602 loops=1)

  • Filter: (approvalstatus = ANY ('{1,2}'::integer[]))
  • Rows Removed by Filter: 856
  • Buffers: shared hit=98 read=1111 written=171
77. 86.921 2,816.304 ↓ 1.0 113,458 1

Hash (cost=7,169.85..7,169.85 rows=113,444 width=32) (actual time=2,816.304..2,816.304 rows=113,458 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 8116kB
  • Buffers: shared hit=290199 read=21729 written=2069
78. 169.265 2,729.383 ↓ 1.0 113,458 1

Merge Join (cost=0.83..7,169.85 rows=113,444 width=32) (actual time=10.441..2,729.383 rows=113,458 loops=1)

  • Merge Cond: (ts.id = tslist.timesheetid)
  • Buffers: shared hit=290199 read=21729 written=2069
79. 300.606 300.606 ↓ 1.0 113,458 1

Index Only Scan using timesheet_pkey on timesheet ts (cost=0.42..2,332.08 rows=113,444 width=16) (actual time=8.081..300.606 rows=113,458 loops=1)

  • Heap Fetches: 8845
  • Buffers: shared hit=8742 read=632 written=65
80. 2,259.512 2,259.512 ↓ 1.0 113,460 1

Index Only Scan using dm_timesheetlist_facts_pkey on dm_timesheetlist_facts tslist (cost=0.42..3,136.11 rows=113,446 width=16) (actual time=2.353..2,259.512 rows=113,460 loops=1)

  • Heap Fetches: 301180
  • Buffers: shared hit=281457 read=21097 written=2004
81. 0.009 0.031 ↑ 1.0 7 1

Hash (cost=1.07..1.07 rows=7 width=8) (actual time=0.031..0.031 rows=7 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
  • Buffers: shared read=1
82. 0.022 0.022 ↑ 1.0 7 1

Seq Scan on currencyinfo currencyinfo11 (cost=0.00..1.07 rows=7 width=8) (actual time=0.020..0.022 rows=7 loops=1)

  • Buffers: shared read=1
Planning time : 421.853 ms
Execution time : 1,025,997.520 ms