explain.depesz.com

PostgreSQL's explain analyze made readable

Result: Tyg0

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

Sort (cost=13,333,476,870.18..13,333,478,151.17 rows=512,396 width=1,329) (actual rows= loops=)

  • Sort Key: ts.enddate, ((ui.externalid)::character varying(255)) COLLATE "en_US", ((ui.lastname)::character varying(50)) COLLATE "en_US", ((ui.firstname)::character varying(50)) COLLATE "en_US", ui.duplicatename, ((login.loginname)::character varying(255)) COLLATE "en_US", ((ui.displayname)::text) COLLATE "en_US
2. 0.000 0.000 ↓ 0.0

Hash Join (cost=6,666,301,118.72..13,333,258,145.36 rows=512,396 width=1,329) (actual rows= loops=)

  • Hash Cond: ("*SELECT* 1".userid = ui.id)
3. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=6,666,300,520.29..13,333,250,464.44 rows=522,277 width=24) (actual rows= loops=)

  • Hash Cond: ("*SELECT* 1".userid = ts.userid)
  • Join Filter: (("*SELECT* 1".entrydate >= ts.startdate) AND ("*SELECT* 1".entrydate <= ts.enddate))
4. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=6,666,281,406.12..13,333,154,599.75 rows=118,922 width=24) (actual rows= loops=)

  • Filter: (((timeentrymetadata4.uri IS NULL) AND ("*SELECT* 1".timeoffentryid IS NULL) AND (("*SELECT* 1".timeallocationtype = 1) OR ("*SELECT* 1".timeallocationtype IS NULL))) OR ("*SELECT* 1".timeoffentryid IS NOT NULL))
5. 0.000 0.000 ↓ 0.0

Append (cost=6,666,281,405.56..13,332,884,062.35 rows=119,520 width=48) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Subquery Scan on *SELECT* 1 (cost=6,666,281,405.56..6,666,599,225.46 rows=118,774 width=48) (actual rows= loops=)

  • Filter: ((hashed SubPlan 17) OR (hashed SubPlan 26))
7. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1,001.56..316,445.97 rows=158,366 width=140) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

Seq Scan on projectsysteminformation psi (cost=0.00..1.01 rows=1 width=0) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1,001.56..312,089.90 rows=158,366 width=60) (actual rows= loops=)

10. 0.000 0.000 ↓ 0.0

Seq Scan on systeminformation si (cost=0.00..1.01 rows=1 width=0) (actual rows= loops=)

11. 0.000 0.000 ↓ 0.0

Gather (cost=1,001.56..310,505.23 rows=158,366 width=60) (actual rows= loops=)

  • Workers Planned: 2
12. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=1.56..293,668.63 rows=65,986 width=60) (actual rows= loops=)

13. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.99..150,095.83 rows=65,986 width=60) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

Parallel Index Scan using ixte2entrydate on timeentry te (cost=0.43..6,523.02 rows=65,986 width=60) (actual rows= loops=)

  • Index Cond: ((entrydate >= '2020-08-30'::date) AND (entrydate <= '2020-09-05'::date))
  • Filter: ((timeallocationtype <> 2) OR (timeallocationtype IS NULL))
15. 0.000 0.000 ↓ 0.0

Index Scan using ixtem2timeentryid on timeentrymetadata tembillingrate (cost=0.56..2.17 rows=1 width=16) (actual rows= loops=)

  • Index Cond: ((timeentryid = te.id) AND (upper(key) = 'URN:REPLICON:TIME-ENTRY-METADATA-KEY:BILLING-RATE'::text))
16. 0.000 0.000 ↓ 0.0

Index Scan using ixtem2timeentryid on timeentrymetadata temdbreaktype (cost=0.56..2.17 rows=1 width=16) (actual rows= loops=)

  • Index Cond: ((timeentryid = te.id) AND (upper(key) = 'URN:REPLICON:TIME-ENTRY-METADATA-KEY:BREAK-TYPE'::text))
17.          

SubPlan (for Subquery Scan)

18. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.56..6,653,857,247.01 rows=6,848,791 width=16) (actual rows= loops=)

19. 0.000 0.000 ↓ 0.0

Seq Scan on timeentryrevision timeentryrevision5 (cost=0.00..574,723.80 rows=6,933,420 width=32) (actual rows= loops=)

  • Filter: (totimestamputc IS NULL)
20. 0.000 0.000 ↓ 0.0

Index Scan using timeentryrevision_pkey on timeentryrevision timeentryrevision6 (cost=0.56..959.60 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = timeentryrevision5.id)
  • Filter: ((userid = 1,587) OR (alternatives: SubPlan 1 or hashed SubPlan 2) OR (SubPlan 3) OR (SubPlan 4) OR (SubPlan 5) OR (SubPlan 6) OR ((SubPlan 9) AND ((SubPlan 10) OR (SubPlan 11))) OR ((SubPlan 14) AND ((SubPlan 15) OR (SubPlan 16))))
21.          

SubPlan (for Index Scan)

22. 0.000 0.000 ↓ 0.0

Index Scan using ix3uh_usersuperstart on userhierarchy userhierarchy7 (cost=0.28..2.31 rows=1 width=0) (actual rows= loops=)

  • Index Cond: ((userid = timeentryrevision6.userid) AND (supervisorid = 1,587) AND (startdate <= '2020-09-09'::date))
  • Filter: (enddate >= '2020-09-09'::date)
23. 0.000 0.000 ↓ 0.0

Index Scan using ixuhsupervisorid on userhierarchy userhierarchy7_1 (cost=0.28..16.53 rows=12 width=4) (actual rows= loops=)

  • Index Cond: (supervisorid = 1,587)
  • Filter: ((startdate <= '2020-09-09'::date) AND (enddate >= '2020-09-09'::date))
24. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.53..26.15 rows=3 width=32) (actual rows= loops=)

25. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.25..18.15 rows=12 width=84) (actual rows= loops=)

26. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.97..7.43 rows=1 width=4) (actual rows= loops=)

27. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.55..4.59 rows=1 width=20) (actual rows= loops=)

28. 0.000 0.000 ↓ 0.0

Index Scan using uix2tsar_nodeid_userid on tsapprovalrequest tsapprovalrequest11 (cost=0.27..2.29 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (userid = 1,587)
29. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalnodes_pkey on timesheetapprovalnodes timesheetapprovalnodes10 (cost=0.28..2.29 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = tsapprovalrequest11.nodeid)
30. 0.000 0.000 ↓ 0.0

Index Scan using timesheet_pkey on timesheet timesheet9 (cost=0.42..2.15 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = timesheetapprovalnodes10.timesheetid)
  • Filter: ((startdate <= timeentryrevision6.entrydate) AND (enddate >= timeentryrevision6.entrydate) AND (userid = timeentryrevision6.userid))
31. 0.000 0.000 ↓ 0.0

Index Scan using ixtsarkvtsapprovalrequestid on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue8 (cost=0.28..10.61 rows=12 width=88) (actual rows= loops=)

  • Index Cond: (tsapprovalrequestid = tsapprovalrequest11.id)
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-DATA-ACCESS-LEVELS'::text)
32. 0.000 0.000 ↓ 0.0

Index Scan using tsapprovalrequestkeyvalue_pkey on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue12 (cost=0.28..0.67 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = tsapprovalrequestkeyvalue8.parentid)
  • Filter: (parentid IS NULL)
33. 0.000 0.000 ↓ 0.0

Nested Loop (cost=15.45..51.59 rows=1 width=32) (actual rows= loops=)

34. 0.000 0.000 ↓ 0.0

Nested Loop (cost=14.89..50.75 rows=1 width=16) (actual rows= loops=)

35. 0.000 0.000 ↓ 0.0

Nested Loop (cost=14.33..48.63 rows=1 width=16) (actual rows= loops=)

36. 0.000 0.000 ↓ 0.0

Nested Loop (cost=13.76..47.82 rows=1 width=16) (actual rows= loops=)

37. 0.000 0.000 ↓ 0.0

Nested Loop (cost=13.20..45.79 rows=1 width=16) (actual rows= loops=)

38. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.64..42.51 rows=1 width=16) (actual rows= loops=)

39. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.08..39.92 rows=1 width=16) (actual rows= loops=)

40. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.84..27.66 rows=1 width=16) (actual rows= loops=)

41. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet14 (cost=0.42..5.60 rows=4 width=16) (actual rows= loops=)

  • Index Cond: ((userid = timeentryrevision6.userid) AND (startdate <= timeentryrevision6.entrydate) AND (enddate >= timeentryrevision6.entrydate))
42. 0.000 0.000 ↓ 0.0

Index Scan using ixtah2timesheetid on timesheetapprovalhistory timesheetapprovalhistory15 (cost=0.42..5.50 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (timesheetid = timesheet14.id)
  • Filter: (userid = 1,587)
43. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue16 (cost=11.23..12.25 rows=1 width=32) (actual rows= loops=)

  • Recheck Cond: ((timesheetapprovalhistoryid = timesheetapprovalhistory15.id) AND (upper(uri) = 'URN:REPLICON-TENANT:EC59310F04EB4B13A07D9DD6E7E07B8C:USER:1,587'::text))
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-NODES'::text)
44. 0.000 0.000 ↓ 0.0

BitmapAnd (cost=11.23..11.23 rows=1 width=0) (actual rows= loops=)

45. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ixtahkvtimesheetapprovalhistoryid (cost=0.00..2.09 rows=70 width=0) (actual rows= loops=)

  • Index Cond: (timesheetapprovalhistoryid = timesheetapprovalhistory15.id)
46. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ixtahkvuri (cost=0.00..8.83 rows=419 width=0) (actual rows= loops=)

  • Index Cond: (upper(uri) = 'URN:REPLICON-TENANT:EC59310F04EB4B13A07D9DD6E7E07B8C:USER:1,587'::text)
47. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalhistorykeyvalue_pkey on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue17 (cost=0.56..2.59 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = sheetapprovalhistorykeyvalue16.parentid)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-EXPECTED-APPROVAL-AGENT-USER'::text)
48. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue18 (cost=0.56..3.27 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue17.parentid)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-METADATA'::text)
49. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue19 (cost=0.56..1.94 rows=9 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue18.id)
50. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue20 (cost=0.56..0.80 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue19.id)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-DATA-ACCESS-LEVELS'::text)
51. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue21 (cost=0.56..2.03 rows=9 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue20.id)
52. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue13 (cost=0.56..0.75 rows=9 width=89) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue21.id)
53. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.53..19.87 rows=1 width=32) (actual rows= loops=)

54. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.25..18.04 rows=1 width=84) (actual rows= loops=)

55. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.97..7.43 rows=1 width=4) (actual rows= loops=)

56. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.55..4.59 rows=1 width=20) (actual rows= loops=)

57. 0.000 0.000 ↓ 0.0

Index Scan using uix2tsar_nodeid_userid on tsapprovalrequest tsapprovalrequest25 (cost=0.27..2.29 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (userid = 1,587)
58. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalnodes_pkey on timesheetapprovalnodes timesheetapprovalnodes24 (cost=0.28..2.29 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = tsapprovalrequest25.nodeid)
59. 0.000 0.000 ↓ 0.0

Index Scan using timesheet_pkey on timesheet timesheet23 (cost=0.42..2.15 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = timesheetapprovalnodes24.timesheetid)
  • Filter: ((startdate <= timeentryrevision6.entrydate) AND (enddate >= timeentryrevision6.entrydate) AND (userid = timeentryrevision6.userid))
60. 0.000 0.000 ↓ 0.0

Index Scan using ixtsarkvtsapprovalrequestid on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue22 (cost=0.28..10.61 rows=1 width=88) (actual rows= loops=)

  • Index Cond: (tsapprovalrequestid = tsapprovalrequest25.id)
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-ACCESSIBLE-OBJECTS'::text)
61. 0.000 0.000 ↓ 0.0

Index Scan using tsapprovalrequestkeyvalue_pkey on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue26 (cost=0.28..1.82 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = tsapprovalrequestkeyvalue22.parentid)
  • Filter: (parentid IS NULL)
62. 0.000 0.000 ↓ 0.0

Nested Loop (cost=15.45..51.60 rows=1 width=32) (actual rows= loops=)

63. 0.000 0.000 ↓ 0.0

Nested Loop (cost=14.89..50.76 rows=1 width=16) (actual rows= loops=)

64. 0.000 0.000 ↓ 0.0

Nested Loop (cost=14.33..48.63 rows=1 width=16) (actual rows= loops=)

65. 0.000 0.000 ↓ 0.0

Nested Loop (cost=13.76..47.82 rows=1 width=16) (actual rows= loops=)

66. 0.000 0.000 ↓ 0.0

Nested Loop (cost=13.20..45.79 rows=1 width=16) (actual rows= loops=)

67. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.64..42.51 rows=1 width=16) (actual rows= loops=)

68. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.08..39.92 rows=1 width=16) (actual rows= loops=)

69. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.84..27.66 rows=1 width=16) (actual rows= loops=)

70. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet28 (cost=0.42..5.60 rows=4 width=16) (actual rows= loops=)

  • Index Cond: ((userid = timeentryrevision6.userid) AND (startdate <= timeentryrevision6.entrydate) AND (enddate >= timeentryrevision6.entrydate))
71. 0.000 0.000 ↓ 0.0

Index Scan using ixtah2timesheetid on timesheetapprovalhistory timesheetapprovalhistory29 (cost=0.42..5.50 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (timesheetid = timesheet28.id)
  • Filter: (userid = 1,587)
72. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue30 (cost=11.23..12.25 rows=1 width=32) (actual rows= loops=)

  • Recheck Cond: ((timesheetapprovalhistoryid = timesheetapprovalhistory29.id) AND (upper(uri) = 'URN:REPLICON-TENANT:EC59310F04EB4B13A07D9DD6E7E07B8C:USER:1,587'::text))
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-NODES'::text)
73. 0.000 0.000 ↓ 0.0

BitmapAnd (cost=11.23..11.23 rows=1 width=0) (actual rows= loops=)

74. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ixtahkvtimesheetapprovalhistoryid (cost=0.00..2.09 rows=70 width=0) (actual rows= loops=)

  • Index Cond: (timesheetapprovalhistoryid = timesheetapprovalhistory29.id)
75. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ixtahkvuri (cost=0.00..8.83 rows=419 width=0) (actual rows= loops=)

  • Index Cond: (upper(uri) = 'URN:REPLICON-TENANT:EC59310F04EB4B13A07D9DD6E7E07B8C:USER:1,587'::text)
76. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalhistorykeyvalue_pkey on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue31 (cost=0.56..2.59 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = sheetapprovalhistorykeyvalue30.parentid)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-EXPECTED-APPROVAL-AGENT-USER'::text)
77. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue32 (cost=0.56..3.27 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue31.parentid)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-METADATA'::text)
78. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue33 (cost=0.56..1.94 rows=9 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue32.id)
79. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue34 (cost=0.56..0.80 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue33.id)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-ACCESSIBLE-OBJECTS'::text)
80. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue35 (cost=0.56..2.04 rows=9 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue34.id)
81. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue27 (cost=0.56..0.75 rows=9 width=89) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue35.id)
82. 0.000 0.000 ↓ 0.0

Index Scan using ixtemrtimeentryid on timeentrymetadatarevision timeentrymetadatarevision36 (cost=638.13..662.06 rows=1 width=0) (actual rows= loops=)

  • Index Cond: (timeentryid = timeentryrevision6.timeentryid)
  • Filter: ((fromtimestamputc <= timeentryrevision6.fromtimestamputc) AND ((totimestamputc > timeentryrevision6.fromtimestamputc) OR (totimestamputc IS NULL)) AND (((upper(key) = 'URN:REPLICON:TIME-ENTRY-METADATA-KEY:PROJECT'::text) AND (hashed SubPlan 7)) OR ((upper(key) = 'URN:REPLICON:TIME-ENTRY-METADATA-KEY:TASK'::text) AND (hashed SubPlan 8))))
83.          

SubPlan (for Index Scan)

84. 0.000 0.000 ↓ 0.0

Index Scan using ixprjprojectleaderapproverid on project project37 (cost=0.42..102.11 rows=98 width=32) (actual rows= loops=)

  • Index Cond: (projectleaderapproverid = 1,587)
85. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.85..534.71 rows=198 width=32) (actual rows= loops=)

86. 0.000 0.000 ↓ 0.0

Index Scan using ixprjprojectleaderapproverid on project project39 (cost=0.42..101.13 rows=98 width=4) (actual rows= loops=)

  • Index Cond: (projectleaderapproverid = 1,587)
87. 0.000 0.000 ↓ 0.0

Index Scan using ixtkprojectid on task task38 (cost=0.42..4.36 rows=4 width=8) (actual rows= loops=)

  • Index Cond: (projectid = project39.id)
88. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.53..26.15 rows=3 width=32) (actual rows= loops=)

89. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.25..18.15 rows=12 width=84) (actual rows= loops=)

90. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.97..7.43 rows=1 width=4) (actual rows= loops=)

91. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.55..4.59 rows=1 width=20) (actual rows= loops=)

92. 0.000 0.000 ↓ 0.0

Index Scan using uix2tsar_nodeid_userid on tsapprovalrequest tsapprovalrequest43 (cost=0.27..2.29 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (userid = 1,587)
93. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalnodes_pkey on timesheetapprovalnodes timesheetapprovalnodes42 (cost=0.28..2.29 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = tsapprovalrequest43.nodeid)
94. 0.000 0.000 ↓ 0.0

Index Scan using timesheet_pkey on timesheet timesheet41 (cost=0.42..2.15 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = timesheetapprovalnodes42.timesheetid)
  • Filter: ((startdate <= timeentryrevision6.entrydate) AND (enddate >= timeentryrevision6.entrydate) AND (userid = timeentryrevision6.userid))
95. 0.000 0.000 ↓ 0.0

Index Scan using ixtsarkvtsapprovalrequestid on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue40 (cost=0.28..10.61 rows=12 width=88) (actual rows= loops=)

  • Index Cond: (tsapprovalrequestid = tsapprovalrequest43.id)
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-DATA-ACCESS-LEVELS'::text)
96. 0.000 0.000 ↓ 0.0

Index Scan using tsapprovalrequestkeyvalue_pkey on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue44 (cost=0.28..0.67 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = tsapprovalrequestkeyvalue40.parentid)
  • Filter: (parentid IS NULL)
97. 0.000 0.000 ↓ 0.0

Nested Loop (cost=15.45..51.59 rows=1 width=32) (actual rows= loops=)

98. 0.000 0.000 ↓ 0.0

Nested Loop (cost=14.89..50.75 rows=1 width=16) (actual rows= loops=)

99. 0.000 0.000 ↓ 0.0

Nested Loop (cost=14.33..48.63 rows=1 width=16) (actual rows= loops=)

100. 0.000 0.000 ↓ 0.0

Nested Loop (cost=13.76..47.82 rows=1 width=16) (actual rows= loops=)

101. 0.000 0.000 ↓ 0.0

Nested Loop (cost=13.20..45.79 rows=1 width=16) (actual rows= loops=)

102. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.64..42.51 rows=1 width=16) (actual rows= loops=)

103. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.08..39.92 rows=1 width=16) (actual rows= loops=)

104. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.84..27.66 rows=1 width=16) (actual rows= loops=)

105. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet46 (cost=0.42..5.60 rows=4 width=16) (actual rows= loops=)

  • Index Cond: ((userid = timeentryrevision6.userid) AND (startdate <= timeentryrevision6.entrydate) AND (enddate >= timeentryrevision6.entrydate))
106. 0.000 0.000 ↓ 0.0

Index Scan using ixtah2timesheetid on timesheetapprovalhistory timesheetapprovalhistory47 (cost=0.42..5.50 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (timesheetid = timesheet46.id)
  • Filter: (userid = 1,587)
107. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue48 (cost=11.23..12.25 rows=1 width=32) (actual rows= loops=)

  • Recheck Cond: ((timesheetapprovalhistoryid = timesheetapprovalhistory47.id) AND (upper(uri) = 'URN:REPLICON-TENANT:EC59310F04EB4B13A07D9DD6E7E07B8C:USER:1,587'::text))
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-NODES'::text)
108. 0.000 0.000 ↓ 0.0

BitmapAnd (cost=11.23..11.23 rows=1 width=0) (actual rows= loops=)

109. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ixtahkvtimesheetapprovalhistoryid (cost=0.00..2.09 rows=70 width=0) (actual rows= loops=)

  • Index Cond: (timesheetapprovalhistoryid = timesheetapprovalhistory47.id)
110. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ixtahkvuri (cost=0.00..8.83 rows=419 width=0) (actual rows= loops=)

  • Index Cond: (upper(uri) = 'URN:REPLICON-TENANT:EC59310F04EB4B13A07D9DD6E7E07B8C:USER:1,587'::text)
111. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalhistorykeyvalue_pkey on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue49 (cost=0.56..2.59 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = sheetapprovalhistorykeyvalue48.parentid)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-EXPECTED-APPROVAL-AGENT-USER'::text)
112. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue50 (cost=0.56..3.27 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue49.parentid)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-METADATA'::text)
113. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue51 (cost=0.56..1.94 rows=9 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue50.id)
114. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue52 (cost=0.56..0.80 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue51.id)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-DATA-ACCESS-LEVELS'::text)
115. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue53 (cost=0.56..2.03 rows=9 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue52.id)
116. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue45 (cost=0.56..0.75 rows=9 width=89) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue53.id)
117. 0.000 0.000 ↓ 0.0

Index Scan using ixtemrtimeentryid on timeentrymetadatarevision timeentrymetadatarevision54 (cost=84.27..108.20 rows=1 width=0) (actual rows= loops=)

  • Index Cond: (timeentryid = timeentryrevision6.timeentryid)
  • Filter: ((fromtimestamputc <= timeentryrevision6.fromtimestamputc) AND ((totimestamputc > timeentryrevision6.fromtimestamputc) OR (totimestamputc IS NULL)) AND (((upper(key) = 'URN:REPLICON:TIME-ENTRY-METADATA-KEY:PROJECT'::text) AND (hashed SubPlan 12)) OR ((upper(key) = 'URN:REPLICON:TIME-ENTRY-METADATA-KEY:TASK'::text) AND (hashed SubPlan 13))))
118.          

SubPlan (for Index Scan)

119. 0.000 0.000 ↓ 0.0

Nested Loop (cost=32.98..39.98 rows=6 width=32) (actual rows= loops=)

120. 0.000 0.000 ↓ 0.0

HashAggregate (cost=32.56..32.62 rows=6 width=4) (actual rows= loops=)

  • Group Key: resentativeprojectassignment56.projectid
121. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.30..32.55 rows=6 width=4) (actual rows= loops=)

122. 0.000 0.000 ↓ 0.0

Index Scan using uix2cr_clientuser on clientrepresentative clientrepresentative57 (cost=0.15..19.01 rows=8 width=16) (actual rows= loops=)

  • Index Cond: (userid = 1,587)
123. 0.000 0.000 ↓ 0.0

Index Scan using ixcrpaclientrepresentativeid on clientrepresentativeprojectassignment resentativeprojectassignment56 (cost=0.15..1.63 rows=6 width=20) (actual rows= loops=)

  • Index Cond: (clientrepresentativeid = clientrepresentative57.id)
124. 0.000 0.000 ↓ 0.0

Index Only Scan using project_pkey on project project55 (cost=0.42..1.22 rows=1 width=4) (actual rows= loops=)

  • Index Cond: (id = resentativeprojectassignment56.projectid)
125. 0.000 0.000 ↓ 0.0

Nested Loop (cost=33.41..43.65 rows=23 width=32) (actual rows= loops=)

126. 0.000 0.000 ↓ 0.0

Nested Loop (cost=32.98..39.92 rows=6 width=8) (actual rows= loops=)

127. 0.000 0.000 ↓ 0.0

HashAggregate (cost=32.56..32.62 rows=6 width=4) (actual rows= loops=)

  • Group Key: resentativeprojectassignment56_1.projectid
128. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.30..32.55 rows=6 width=4) (actual rows= loops=)

129. 0.000 0.000 ↓ 0.0

Index Scan using uix2cr_clientuser on clientrepresentative clientrepresentative57_1 (cost=0.15..19.01 rows=8 width=16) (actual rows= loops=)

  • Index Cond: (userid = 1,587)
130. 0.000 0.000 ↓ 0.0

Index Scan using ixcrpaclientrepresentativeid on clientrepresentativeprojectassignment resentativeprojectassignment56_1 (cost=0.15..1.63 rows=6 width=20) (actual rows= loops=)

  • Index Cond: (clientrepresentativeid = clientrepresentative57_1.id)
131. 0.000 0.000 ↓ 0.0

Index Only Scan using project_pkey on project project59 (cost=0.42..1.22 rows=1 width=4) (actual rows= loops=)

  • Index Cond: (id = resentativeprojectassignment56_1.projectid)
132. 0.000 0.000 ↓ 0.0

Index Scan using ixtkprojectid on task task58 (cost=0.42..0.54 rows=4 width=8) (actual rows= loops=)

  • Index Cond: (projectid = project59.id)
133. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.53..26.15 rows=3 width=32) (actual rows= loops=)

134. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.25..18.15 rows=12 width=84) (actual rows= loops=)

135. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.97..7.43 rows=1 width=4) (actual rows= loops=)

136. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.55..4.59 rows=1 width=20) (actual rows= loops=)

137. 0.000 0.000 ↓ 0.0

Index Scan using uix2tsar_nodeid_userid on tsapprovalrequest tsapprovalrequest63 (cost=0.27..2.29 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (userid = 1,587)
138. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalnodes_pkey on timesheetapprovalnodes timesheetapprovalnodes62 (cost=0.28..2.29 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = tsapprovalrequest63.nodeid)
139. 0.000 0.000 ↓ 0.0

Index Scan using timesheet_pkey on timesheet timesheet61 (cost=0.42..2.15 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = timesheetapprovalnodes62.timesheetid)
  • Filter: ((startdate <= timeentryrevision6.entrydate) AND (enddate >= timeentryrevision6.entrydate) AND (userid = timeentryrevision6.userid))
140. 0.000 0.000 ↓ 0.0

Index Scan using ixtsarkvtsapprovalrequestid on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue60 (cost=0.28..10.61 rows=12 width=88) (actual rows= loops=)

  • Index Cond: (tsapprovalrequestid = tsapprovalrequest63.id)
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-DATA-ACCESS-LEVELS'::text)
141. 0.000 0.000 ↓ 0.0

Index Scan using tsapprovalrequestkeyvalue_pkey on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue64 (cost=0.28..0.67 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = tsapprovalrequestkeyvalue60.parentid)
  • Filter: (parentid IS NULL)
142. 0.000 0.000 ↓ 0.0

Nested Loop (cost=15.45..51.59 rows=1 width=32) (actual rows= loops=)

143. 0.000 0.000 ↓ 0.0

Nested Loop (cost=14.89..50.75 rows=1 width=16) (actual rows= loops=)

144. 0.000 0.000 ↓ 0.0

Nested Loop (cost=14.33..48.63 rows=1 width=16) (actual rows= loops=)

145. 0.000 0.000 ↓ 0.0

Nested Loop (cost=13.76..47.82 rows=1 width=16) (actual rows= loops=)

146. 0.000 0.000 ↓ 0.0

Nested Loop (cost=13.20..45.79 rows=1 width=16) (actual rows= loops=)

147. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.64..42.51 rows=1 width=16) (actual rows= loops=)

148. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.08..39.92 rows=1 width=16) (actual rows= loops=)

149. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.84..27.66 rows=1 width=16) (actual rows= loops=)

150. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet66 (cost=0.42..5.60 rows=4 width=16) (actual rows= loops=)

  • Index Cond: ((userid = timeentryrevision6.userid) AND (startdate <= timeentryrevision6.entrydate) AND (enddate >= timeentryrevision6.entrydate))
151. 0.000 0.000 ↓ 0.0

Index Scan using ixtah2timesheetid on timesheetapprovalhistory timesheetapprovalhistory67 (cost=0.42..5.50 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (timesheetid = timesheet66.id)
  • Filter: (userid = 1,587)
152. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue68 (cost=11.23..12.25 rows=1 width=32) (actual rows= loops=)

  • Recheck Cond: ((timesheetapprovalhistoryid = timesheetapprovalhistory67.id) AND (upper(uri) = 'URN:REPLICON-TENANT:EC59310F04EB4B13A07D9DD6E7E07B8C:USER:1,587'::text))
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-NODES'::text)
153. 0.000 0.000 ↓ 0.0

BitmapAnd (cost=11.23..11.23 rows=1 width=0) (actual rows= loops=)

154. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ixtahkvtimesheetapprovalhistoryid (cost=0.00..2.09 rows=70 width=0) (actual rows= loops=)

  • Index Cond: (timesheetapprovalhistoryid = timesheetapprovalhistory67.id)
155. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ixtahkvuri (cost=0.00..8.83 rows=419 width=0) (actual rows= loops=)

  • Index Cond: (upper(uri) = 'URN:REPLICON-TENANT:EC59310F04EB4B13A07D9DD6E7E07B8C:USER:1,587'::text)
156. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalhistorykeyvalue_pkey on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue69 (cost=0.56..2.59 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = sheetapprovalhistorykeyvalue68.parentid)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-EXPECTED-APPROVAL-AGENT-USER'::text)
157. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue70 (cost=0.56..3.27 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue69.parentid)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-METADATA'::text)
158. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue71 (cost=0.56..1.94 rows=9 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue70.id)
159. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue72 (cost=0.56..0.80 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue71.id)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-DATA-ACCESS-LEVELS'::text)
160. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue73 (cost=0.56..2.03 rows=9 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue72.id)
161. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue65 (cost=0.56..0.75 rows=9 width=89) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue73.id)
162. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.28..12,405,665.23 rows=147,914 width=4) (actual rows= loops=)

  • Filter: (((userhierarchy75.supervisorid = 1,587) AND ((userhierarchy75.startdate IS NULL) OR (userhierarchy75.startdate <= '2020-09-09'::date)) AND ((userhierarchy75.enddate IS NULL) OR (userhierarchy75.enddate >= '2020-09-09'::date))) OR (timeoffs74.userid = 1,587) OR (alternatives: SubPlan 18 or hashed SubPlan 19) OR (alternatives: SubPlan 20 or hashed SubPlan 21) OR (SubPlan 22) OR (SubPlan 23) OR (SubPlan 24) OR (SubPlan 25))
163. 0.000 0.000 ↓ 0.0

Seq Scan on timeoffs timeoffs74 (cost=0.00..3,999.85 rows=122,885 width=16) (actual rows= loops=)

164. 0.000 0.000 ↓ 0.0

Index Scan using ix3uh_usersuperstart on userhierarchy userhierarchy75 (cost=0.28..0.30 rows=1 width=24) (actual rows= loops=)

  • Index Cond: (userid = timeoffs74.userid)
165.          

SubPlan (for Nested Loop Left Join)

166. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.55..5.59 rows=1 width=0) (actual rows= loops=)

167. 0.000 0.000 ↓ 0.0

Index Scan using ixtoantimeoffid on timeoffapprovalnodes timeoffapprovalnodes76 (cost=0.27..2.29 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (timeoffid = timeoffs74.id)
168. 0.000 0.000 ↓ 0.0

Index Only Scan using uix2toaraidnid on timeoffapprovalrequest timeoffapprovalrequest77 (cost=0.27..2.29 rows=1 width=16) (actual rows= loops=)

  • Index Cond: ((approverid = 1,587) AND (nodeid = timeoffapprovalnodes76.id))
169. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.55..11.20 rows=3 width=4) (actual rows= loops=)

170. 0.000 0.000 ↓ 0.0

Index Only Scan using uix2toaraidnid on timeoffapprovalrequest timeoffapprovalrequest77_1 (cost=0.27..4.32 rows=3 width=16) (actual rows= loops=)

  • Index Cond: (approverid = 1,587)
171. 0.000 0.000 ↓ 0.0

Index Scan using timeoffapprovalnodes_pkey on timeoffapprovalnodes timeoffapprovalnodes76_1 (cost=0.27..2.29 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (id = timeoffapprovalrequest77_1.nodeid)
172. 0.000 0.000 ↓ 0.0

Index Scan using ixtoahtimeoffid on timeoffapprovalhistory timeoffapprovalhistory78 (cost=0.42..3.38 rows=1 width=0) (actual rows= loops=)

  • Index Cond: (timeoffid = timeoffs74.id)
  • Filter: ((userid = 1,587) AND (action = ANY ('{2,3,4}'::integer[])))
173. 0.000 0.000 ↓ 0.0

Index Scan using ixtoahuserid on timeoffapprovalhistory timeoffapprovalhistory78_1 (cost=0.42..95.22 rows=46 width=4) (actual rows= loops=)

  • Index Cond: (userid = 1,587)
  • Filter: (action = ANY ('{2,3,4}'::integer[]))
174. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.53..26.15 rows=3 width=32) (actual rows= loops=)

175. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.25..18.15 rows=12 width=84) (actual rows= loops=)

176. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.97..7.43 rows=1 width=4) (actual rows= loops=)

177. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.55..4.59 rows=1 width=20) (actual rows= loops=)

178. 0.000 0.000 ↓ 0.0

Index Scan using uix2tsar_nodeid_userid on tsapprovalrequest tsapprovalrequest82 (cost=0.27..2.29 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (userid = 1,587)
179. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalnodes_pkey on timesheetapprovalnodes timesheetapprovalnodes81 (cost=0.28..2.29 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = tsapprovalrequest82.nodeid)
180. 0.000 0.000 ↓ 0.0

Index Scan using timesheet_pkey on timesheet timesheet80 (cost=0.42..2.15 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = timesheetapprovalnodes81.timesheetid)
  • Filter: ((timeoffs74.startdate <= enddate) AND (timeoffs74.enddate >= startdate) AND (userid = timeoffs74.userid))
181. 0.000 0.000 ↓ 0.0

Index Scan using ixtsarkvtsapprovalrequestid on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue79 (cost=0.28..10.61 rows=12 width=88) (actual rows= loops=)

  • Index Cond: (tsapprovalrequestid = tsapprovalrequest82.id)
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-DATA-ACCESS-LEVELS'::text)
182. 0.000 0.000 ↓ 0.0

Index Scan using tsapprovalrequestkeyvalue_pkey on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue83 (cost=0.28..0.67 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = tsapprovalrequestkeyvalue79.parentid)
  • Filter: (parentid IS NULL)
183. 0.000 0.000 ↓ 0.0

Nested Loop (cost=15.45..51.59 rows=1 width=32) (actual rows= loops=)

184. 0.000 0.000 ↓ 0.0

Nested Loop (cost=14.89..50.75 rows=1 width=16) (actual rows= loops=)

185. 0.000 0.000 ↓ 0.0

Nested Loop (cost=14.33..48.63 rows=1 width=16) (actual rows= loops=)

186. 0.000 0.000 ↓ 0.0

Nested Loop (cost=13.76..47.82 rows=1 width=16) (actual rows= loops=)

187. 0.000 0.000 ↓ 0.0

Nested Loop (cost=13.20..45.79 rows=1 width=16) (actual rows= loops=)

188. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.64..42.51 rows=1 width=16) (actual rows= loops=)

189. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.08..39.92 rows=1 width=16) (actual rows= loops=)

190. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.84..27.66 rows=1 width=16) (actual rows= loops=)

191. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet85 (cost=0.42..5.60 rows=4 width=16) (actual rows= loops=)

  • Index Cond: ((userid = timeoffs74.userid) AND (timeoffs74.enddate >= startdate) AND (timeoffs74.startdate <= enddate))
192. 0.000 0.000 ↓ 0.0

Index Scan using ixtah2timesheetid on timesheetapprovalhistory timesheetapprovalhistory86 (cost=0.42..5.50 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (timesheetid = timesheet85.id)
  • Filter: (userid = 1,587)
193. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue87 (cost=11.23..12.25 rows=1 width=32) (actual rows= loops=)

  • Recheck Cond: ((timesheetapprovalhistoryid = timesheetapprovalhistory86.id) AND (upper(uri) = 'URN:REPLICON-TENANT:EC59310F04EB4B13A07D9DD6E7E07B8C:USER:1,587'::text))
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-NODES'::text)
194. 0.000 0.000 ↓ 0.0

BitmapAnd (cost=11.23..11.23 rows=1 width=0) (actual rows= loops=)

195. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ixtahkvtimesheetapprovalhistoryid (cost=0.00..2.09 rows=70 width=0) (actual rows= loops=)

  • Index Cond: (timesheetapprovalhistoryid = timesheetapprovalhistory86.id)
196. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ixtahkvuri (cost=0.00..8.83 rows=419 width=0) (actual rows= loops=)

  • Index Cond: (upper(uri) = 'URN:REPLICON-TENANT:EC59310F04EB4B13A07D9DD6E7E07B8C:USER:1,587'::text)
197. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalhistorykeyvalue_pkey on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue88 (cost=0.56..2.59 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = sheetapprovalhistorykeyvalue87.parentid)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-EXPECTED-APPROVAL-AGENT-USER'::text)
198. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue89 (cost=0.56..3.27 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue88.parentid)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-METADATA'::text)
199. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue90 (cost=0.56..1.94 rows=9 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue89.id)
200. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue91 (cost=0.56..0.80 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue90.id)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-DATA-ACCESS-LEVELS'::text)
201. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue92 (cost=0.56..2.03 rows=9 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue91.id)
202. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue84 (cost=0.56..0.75 rows=9 width=89) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue92.id)
203. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.53..19.87 rows=1 width=32) (actual rows= loops=)

204. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.25..18.04 rows=1 width=84) (actual rows= loops=)

205. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.97..7.43 rows=1 width=4) (actual rows= loops=)

206. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.55..4.59 rows=1 width=20) (actual rows= loops=)

207. 0.000 0.000 ↓ 0.0

Index Scan using uix2tsar_nodeid_userid on tsapprovalrequest tsapprovalrequest96 (cost=0.27..2.29 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (userid = 1,587)
208. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalnodes_pkey on timesheetapprovalnodes timesheetapprovalnodes95 (cost=0.28..2.29 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = tsapprovalrequest96.nodeid)
209. 0.000 0.000 ↓ 0.0

Index Scan using timesheet_pkey on timesheet timesheet94 (cost=0.42..2.15 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = timesheetapprovalnodes95.timesheetid)
  • Filter: ((timeoffs74.startdate <= enddate) AND (timeoffs74.enddate >= startdate) AND (userid = timeoffs74.userid))
210. 0.000 0.000 ↓ 0.0

Index Scan using ixtsarkvtsapprovalrequestid on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue93 (cost=0.28..10.61 rows=1 width=88) (actual rows= loops=)

  • Index Cond: (tsapprovalrequestid = tsapprovalrequest96.id)
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-ACCESSIBLE-OBJECTS'::text)
211. 0.000 0.000 ↓ 0.0

Index Scan using tsapprovalrequestkeyvalue_pkey on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue97 (cost=0.28..1.82 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = tsapprovalrequestkeyvalue93.parentid)
  • Filter: (parentid IS NULL)
212. 0.000 0.000 ↓ 0.0

Nested Loop (cost=15.45..51.60 rows=1 width=32) (actual rows= loops=)

213. 0.000 0.000 ↓ 0.0

Nested Loop (cost=14.89..50.76 rows=1 width=16) (actual rows= loops=)

214. 0.000 0.000 ↓ 0.0

Nested Loop (cost=14.33..48.63 rows=1 width=16) (actual rows= loops=)

215. 0.000 0.000 ↓ 0.0

Nested Loop (cost=13.76..47.82 rows=1 width=16) (actual rows= loops=)

216. 0.000 0.000 ↓ 0.0

Nested Loop (cost=13.20..45.79 rows=1 width=16) (actual rows= loops=)

217. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.64..42.51 rows=1 width=16) (actual rows= loops=)

218. 0.000 0.000 ↓ 0.0

Nested Loop (cost=12.08..39.92 rows=1 width=16) (actual rows= loops=)

219. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.84..27.66 rows=1 width=16) (actual rows= loops=)

220. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet99 (cost=0.42..5.60 rows=4 width=16) (actual rows= loops=)

  • Index Cond: ((userid = timeoffs74.userid) AND (timeoffs74.enddate >= startdate) AND (timeoffs74.startdate <= enddate))
221. 0.000 0.000 ↓ 0.0

Index Scan using ixtah2timesheetid on timesheetapprovalhistory timesheetapprovalhistory100 (cost=0.42..5.50 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (timesheetid = timesheet99.id)
  • Filter: (userid = 1,587)
222. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue101 (cost=11.23..12.25 rows=1 width=32) (actual rows= loops=)

  • Recheck Cond: ((timesheetapprovalhistoryid = timesheetapprovalhistory100.id) AND (upper(uri) = 'URN:REPLICON-TENANT:EC59310F04EB4B13A07D9DD6E7E07B8C:USER:1,587'::text))
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-NODES'::text)
223. 0.000 0.000 ↓ 0.0

BitmapAnd (cost=11.23..11.23 rows=1 width=0) (actual rows= loops=)

224. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ixtahkvtimesheetapprovalhistoryid (cost=0.00..2.09 rows=70 width=0) (actual rows= loops=)

  • Index Cond: (timesheetapprovalhistoryid = timesheetapprovalhistory100.id)
225. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ixtahkvuri (cost=0.00..8.83 rows=419 width=0) (actual rows= loops=)

  • Index Cond: (upper(uri) = 'URN:REPLICON-TENANT:EC59310F04EB4B13A07D9DD6E7E07B8C:USER:1,587'::text)
226. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalhistorykeyvalue_pkey on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue102 (cost=0.56..2.59 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (id = heetapprovalhistorykeyvalue101.parentid)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-EXPECTED-APPROVAL-AGENT-USER'::text)
227. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue103 (cost=0.56..3.27 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (parentid = heetapprovalhistorykeyvalue102.parentid)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-METADATA'::text)
228. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue104 (cost=0.56..1.94 rows=9 width=32) (actual rows= loops=)

  • Index Cond: (parentid = heetapprovalhistorykeyvalue103.id)
229. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue105 (cost=0.56..0.80 rows=1 width=32) (actual rows= loops=)

  • Index Cond: (parentid = heetapprovalhistorykeyvalue104.id)
  • Filter: (upper(uri) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-ACCESSIBLE-OBJECTS'::text)
230. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue106 (cost=0.56..2.04 rows=9 width=32) (actual rows= loops=)

  • Index Cond: (parentid = heetapprovalhistorykeyvalue105.id)
231. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue98 (cost=0.56..0.75 rows=9 width=89) (actual rows= loops=)

  • Index Cond: (parentid = heetapprovalhistorykeyvalue106.id)
232. 0.000 0.000 ↓ 0.0

Subquery Scan on *SELECT* 2 (cost=6,666,280,404.84..6,666,284,836.89 rows=746 width=48) (actual rows= loops=)

  • Filter: ((hashed SubPlan 17) OR (hashed SubPlan 26))
233. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.84..4,417.96 rows=995 width=140) (actual rows= loops=)

234. 0.000 0.000 ↓ 0.0

Index Scan using uix2toe_timeoffidentrydate on timeoffentries toe (cost=0.42..2,602.14 rows=995 width=28) (actual rows= loops=)

  • Index Cond: ((entrydate >= '2020-08-30'::date) AND (entrydate <= '2020-09-05'::date))
235. 0.000 0.000 ↓ 0.0

Index Scan using timeoffs_pkey on timeoffs toff (cost=0.42..1.82 rows=1 width=8) (actual rows= loops=)

  • Index Cond: (id = toe.timeoffid)
236. 0.000 0.000 ↓ 0.0

Index Scan using ixtem2timeentryid on timeentrymetadata timeentrymetadata4 (cost=0.56..2.25 rows=1 width=79) (actual rows= loops=)

  • Index Cond: (("*SELECT* 1".timeentryid = timeentryid) AND (upper(key) = 'URN:REPLICON:TIME-ENTRY-METADATA-KEY:BREAK-TYPE'::text))
237. 0.000 0.000 ↓ 0.0

Hash (cost=16,123.55..16,123.55 rows=239,249 width=12) (actual rows= loops=)

238. 0.000 0.000 ↓ 0.0

Hash Join (cost=8,011.52..16,123.55 rows=239,249 width=12) (actual rows= loops=)

  • Hash Cond: (tslist.timesheetid = ts.id)
239. 0.000 0.000 ↓ 0.0

Index Only Scan using dm_timesheetlist_facts_pkey on dm_timesheetlist_facts tslist (cost=0.42..7,484.08 rows=239,377 width=16) (actual rows= loops=)

240. 0.000 0.000 ↓ 0.0

Hash (cost=5,020.49..5,020.49 rows=239,249 width=28) (actual rows= loops=)

241. 0.000 0.000 ↓ 0.0

Seq Scan on timesheet ts (cost=0.00..5,020.49 rows=239,249 width=28) (actual rows= loops=)

242. 0.000 0.000 ↓ 0.0

Hash (cost=522.59..522.59 rows=6,067 width=50) (actual rows= loops=)

243. 0.000 0.000 ↓ 0.0

Hash Join (cost=251.51..522.59 rows=6,067 width=50) (actual rows= loops=)

  • Hash Cond: (ui.id = login.userid)
244. 0.000 0.000 ↓ 0.0

Seq Scan on userinfo ui (cost=0.00..254.84 rows=6,184 width=39) (actual rows= loops=)

245. 0.000 0.000 ↓ 0.0

Hash (cost=175.67..175.67 rows=6,067 width=11) (actual rows= loops=)

246. 0.000 0.000 ↓ 0.0

Seq Scan on login (cost=0.00..175.67 rows=6,067 width=11) (actual rows= loops=)