explain.depesz.com

PostgreSQL's explain analyze made readable

Result: Q478

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

Sort (cost=14,453,946,602.42..14,453,946,602.47 rows=20 width=1,923) (actual rows= loops=)

  • Sort Key: ((date_part('month'::text, ("*SELECT* 1".entrydate)::timestamp without time zone))::integer), ((pj.name)::character varying(255)) COLLATE "en_US", (CASE WHEN ui.disabled THEN 0 ELSE 1 END), ((userinfo17.displayname)::text) 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", ((servicecenter19.name)::character varying(100)) COLLATE "en_US", ((activities20.name)::character varying(50)) COLLATE "en_US", ((division21.name)::character varying(100)) COLLATE "en_US
2.          

CTE timesheet0cte

3. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.39..50.56 rows=1 width=76) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.11..48.38 rows=1 width=178) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.82..47.34 rows=1 width=182) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.55..45.04 rows=1 width=182) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Index Scan using uix2tsar_nodeid_userid on tsapprovalrequest tsapprovalrequest3 (cost=0.27..4.32 rows=3 width=20) (actual rows= loops=)

  • Index Cond: (userid = 213)
8. 0.000 0.000 ↓ 0.0

Index Scan using ixtsarkvtsapprovalrequestid on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue1 (cost=0.28..13.56 rows=1 width=170) (actual rows= loops=)

  • Index Cond: (tsapprovalrequestid = tsapprovalrequest3.id)
  • Filter: ((upper(key) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-ACCESSIBLE-OBJECTS'::text) OR ((upper(key) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-DATA-ACCESS-LEVELS'::text) AND (upper(uri) = 'URN:REPLICON:TIME-OFF-DATA-ACCESS-LEVEL:TIMESHEET-APPROVER'::text)))
9. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (id = tsapprovalrequest3.nodeid)
10. 0.000 0.000 ↓ 0.0

Index Scan using timesheet_pkey on timesheet timesheet0 (cost=0.29..1.04 rows=1 width=28) (actual rows= loops=)

  • Index Cond: (id = timesheetapprovalnodes2.timesheetid)
11. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (id = tsapprovalrequestkeyvalue1.parentid)
  • Filter: (parentid IS NULL)
12.          

CTE timesheet5cte

13. 0.000 0.000 ↓ 0.0

Nested Loop (cost=163.06..365.42 rows=1 width=76) (actual rows= loops=)

  • Join Filter: ((upper(esheetapprovalhistorykeyvalue6.uri) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-ACCESSIBLE-OBJECTS'::text) OR ((upper(esheetapprovalhistorykeyvalue6.uri) = 'URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-DATA-ACCESS-LEVELS'::text) AND (upper(esheetapprovalhistorykeyvalue7.uri) = 'URN:REPLICON:TIME-OFF-DATA-ACCESS-LEVEL:TIMESHEET-APPROVER'::text)))
14. 0.000 0.000 ↓ 0.0

Nested Loop (cost=162.63..364.79 rows=1 width=100) (actual rows= loops=)

15. 0.000 0.000 ↓ 0.0

Nested Loop (cost=162.20..363.10 rows=1 width=100) (actual rows= loops=)

16. 0.000 0.000 ↓ 0.0

Nested Loop (cost=161.77..362.52 rows=1 width=28) (actual rows= loops=)

17. 0.000 0.000 ↓ 0.0

Nested Loop (cost=161.35..360.91 rows=1 width=28) (actual rows= loops=)

18. 0.000 0.000 ↓ 0.0

Nested Loop (cost=160.92..358.13 rows=1 width=28) (actual rows= loops=)

19. 0.000 0.000 ↓ 0.0

Nested Loop (cost=160.49..355.68 rows=1 width=28) (actual rows= loops=)

20. 0.000 0.000 ↓ 0.0

Hash Join (cost=160.20..354.06 rows=1 width=32) (actual rows= loops=)

  • Hash Cond: (esheetapprovalhistorykeyvalue9.timesheetapprovalhistoryid = timesheetapprovalhistory8.id)
21. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvuri on timesheetapprovalhistorykeyvalue esheetapprovalhistorykeyvalue9 (cost=0.55..194.11 rows=115 width=32) (actual rows= loops=)

  • Index Cond: (upper(uri) = 'URN:REPLICON-TENANT:A767CD9BFF05407A9D98C988F93A21DB:USER:213'::text)
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-NODES'::text)
22. 0.000 0.000 ↓ 0.0

Hash (cost=157.59..157.59 rows=165 width=32) (actual rows= loops=)

23. 0.000 0.000 ↓ 0.0

Index Scan using ixtahuserid on timesheetapprovalhistory timesheetapprovalhistory8 (cost=0.29..157.59 rows=165 width=32) (actual rows= loops=)

  • Index Cond: (userid = 213)
24. 0.000 0.000 ↓ 0.0

Index Scan using timesheet_pkey on timesheet timesheet5 (cost=0.29..1.62 rows=1 width=28) (actual rows= loops=)

  • Index Cond: (id = timesheetapprovalhistory8.timesheetid)
25. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalhistorykeyvalue_pkey on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue10 (cost=0.43..2.45 rows=1 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue11 (cost=0.43..2.77 rows=1 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue12 (cost=0.43..1.56 rows=4 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue11.id)
28. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue esheetapprovalhistorykeyvalue6 (cost=0.43..0.57 rows=1 width=104) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue13 (cost=0.43..1.65 rows=4 width=32) (actual rows= loops=)

  • Index Cond: (parentid = esheetapprovalhistorykeyvalue6.id)
30. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue esheetapprovalhistorykeyvalue7 (cost=0.43..0.53 rows=4 width=88) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue13.id)
31. 0.000 0.000 ↓ 0.0

Nested Loop Semi Join (cost=7,226,972,522.00..14,453,946,186.01 rows=20 width=1,923) (actual rows= loops=)

32. 0.000 0.000 ↓ 0.0

Nested Loop Semi Join (cost=7,226,972,521.72..14,453,946,183.29 rows=20 width=205) (actual rows= loops=)

33. 0.000 0.000 ↓ 0.0

Nested Loop Semi Join (cost=7,226,972,521.45..14,453,946,180.75 rows=20 width=205) (actual rows= loops=)

34. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=7,226,972,521.17..14,453,946,179.20 rows=20 width=205) (actual rows= loops=)

  • Hash Cond: (userdivision29.divisionid = division21.id)
35. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=7,226,972,519.90..14,453,946,177.86 rows=20 width=208) (actual rows= loops=)

  • Join Filter: (ui.id = userdivision29.userid)
36. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=7,226,972,519.63..14,453,946,176.27 rows=20 width=192) (actual rows= loops=)

37. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=7,226,972,519.35..14,453,946,170.17 rows=20 width=217) (actual rows= loops=)

38. 0.000 0.000 ↓ 0.0

Nested Loop (cost=7,226,972,518.79..14,453,946,123.55 rows=18 width=175) (actual rows= loops=)

39. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=7,226,972,518.51..14,453,946,121.03 rows=18 width=152) (actual rows= loops=)

40. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=7,226,972,518.24..14,453,946,115.57 rows=18 width=141) (actual rows= loops=)

  • Join Filter: (ui.id = userservicecenter27.userid)
41. 0.000 0.000 ↓ 0.0

Nested Loop (cost=7,226,972,517.82..14,453,946,110.80 rows=18 width=117) (actual rows= loops=)

42. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=7,226,972,517.54..14,453,946,108.28 rows=18 width=83) (actual rows= loops=)

43. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=7,226,972,517.26..14,453,946,066.84 rows=18 width=48) (actual rows= loops=)

  • Join Filter: (CASE WHEN ("substring"(timeentrymetadata24.uri, '^urn:replicon-tenant:a767cd9bff05407a9d98c988f93a21db:task:(.*)$'::text) ~ '^\s*[-]?[0-9]+\s*$'::text) THEN ("substring"(timeentrymetadata24.uri, '^urn:replicon-tenant:a767cd9bff05407a9d98c988f93a21db:task:(.*)$'::text))::integer ELSE NULL::integer END = task25.id)
44. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=7,226,972,517.26..14,453,946,065.33 rows=18 width=102) (actual rows= loops=)

45. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=7,226,972,516.96..14,453,946,059.66 rows=18 width=156) (actual rows= loops=)

46. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=7,226,972,516.40..14,453,946,018.22 rows=16 width=98) (actual rows= loops=)

47. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=7,226,972,515.84..14,453,945,976.78 rows=16 width=40) (actual rows= loops=)

  • Filter: (timeentrymetadata26.uri IS NULL)
48. 0.000 0.000 ↓ 0.0

Append (cost=7,226,972,515.28..14,453,945,798.07 rows=69 width=40) (actual rows= loops=)

49. 0.000 0.000 ↓ 0.0

Subquery Scan on *SELECT* 1 (cost=7,226,972,515.28..7,226,973,279.75 rows=68 width=40) (actual rows= loops=)

  • Filter: ((hashed SubPlan 23) OR (hashed SubPlan 31))
50. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=1.55..764.65 rows=91 width=140) (actual rows= loops=)

51. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.99..527.37 rows=91 width=56) (actual rows= loops=)

52. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.43..291.68 rows=91 width=56) (actual rows= loops=)

53. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.00..2.03 rows=1 width=0) (actual rows= loops=)

54. 0.000 0.000 ↓ 0.0

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

55. 0.000 0.000 ↓ 0.0

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

56. 0.000 0.000 ↓ 0.0

Index Scan using ixte2userid on timeentry te (cost=0.43..288.74 rows=91 width=56) (actual rows= loops=)

  • Index Cond: ((userid = 84) AND (entrydate >= '2020-08-01'::date) AND (entrydate <= '2020-08-31'::date))
  • Filter: (((timeallocationtype <> 2) OR (timeallocationtype IS NULL)) AND ((timeallocationtype = 1) OR (timeallocationtype IS NULL) OR (timeallocationtype = 0)) AND (CASE WHEN (hours IS NOT NULL) THEN hours WHEN ((intime IS NULL) OR (outtime IS NULL)) THEN NULL::interval WHEN ((outtime - intime) >= '00:00:00'::interval) THEN (outtime - intime) ELSE (('24:00:00'::interval + (outtime)::interval) - (intime)::interval) END >= '00:00:00.36'::interval))
57. 0.000 0.000 ↓ 0.0

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

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

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

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

SubPlan (for Subquery Scan)

60. 0.000 0.000 ↓ 0.0

Merge Join (cost=3,986.56..7,226,952,304.95 rows=3,253,935 width=16) (actual rows= loops=)

  • Merge Cond: (timeentryrevision33.id = timeentryrevision34.id)
61. 0.000 0.000 ↓ 0.0

Index Scan using timeentryrevision_pkey on timeentryrevision timeentryrevision33 (cost=0.56..532,837.18 rows=3,263,892 width=32) (actual rows= loops=)

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

Index Scan using timeentryrevision_pkey on timeentryrevision timeentryrevision34 (cost=3,986.00..7,226,346,947.97 rows=12,728,292 width=16) (actual rows= loops=)

  • Filter: ((hashed SubPlan 3) OR (userid = 213) OR (alternatives: SubPlan 4 or hashed SubPlan 5) OR (SubPlan 6) OR (SubPlan 7) OR (SubPlan 8) OR (SubPlan 9) OR (SubPlan 12) OR ((SubPlan 15) AND ((SubPlan 16) OR (SubPlan 17))) OR ((SubPlan 20) AND ((SubPlan 21) OR (SubPlan 22))))
63.          

SubPlan (for Index Scan)

64. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.85..3,765.72 rows=87,889 width=16) (actual rows= loops=)

65. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.29..49.19 rows=48 width=16) (actual rows= loops=)

66. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.00..15.08 rows=16 width=12) (actual rows= loops=)

  • Join Filter: (userdivision37.divisionid = divisionflathierarchy38.childid)
67. 0.000 0.000 ↓ 0.0

Seq Scan on userdivision userdivision37 (cost=0.00..10.97 rows=197 width=28) (actual rows= loops=)

68. 0.000 0.000 ↓ 0.0

Materialize (cost=0.00..1.15 rows=1 width=16) (actual rows= loops=)

69. 0.000 0.000 ↓ 0.0

Seq Scan on divisionflathierarchy divisionflathierarchy38 (cost=0.00..1.15 rows=1 width=16) (actual rows= loops=)

  • Filter: (parentid = '79e45bea-3f4a-43b7-a7a9-fb153acc2896'::uuid)
70. 0.000 0.000 ↓ 0.0

Index Only Scan using ixtsuseridstartdateenddate on timesheet timesheet36 (cost=0.29..2.10 rows=3 width=12) (actual rows= loops=)

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

Index Scan using ixter2userid on timeentryrevision timeentryrevision35 (cost=0.56..59.79 rows=1,764 width=24) (actual rows= loops=)

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

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

  • Index Cond: ((userid = timeentryrevision34.userid) AND (supervisorid = 213) AND (startdate <= '2020-09-09'::date))
  • Filter: (enddate >= '2020-09-09'::date)
73. 0.000 0.000 ↓ 0.0

Index Scan using ixuhsupervisorid on userhierarchy userhierarchy39_1 (cost=0.28..5.88 rows=5 width=4) (actual rows= loops=)

  • Index Cond: (supervisorid = 213)
  • Filter: ((startdate <= '2020-09-09'::date) AND (enddate >= '2020-09-09'::date))
74. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.39..33.46 rows=1 width=32) (actual rows= loops=)

75. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.11..28.28 rows=14 width=84) (actual rows= loops=)

76. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.83..14.72 rows=1 width=4) (actual rows= loops=)

77. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.56..14.35 rows=1 width=16) (actual rows= loops=)

78. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet41 (cost=0.29..4.40 rows=3 width=16) (actual rows= loops=)

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

Index Scan using ixtantimesheetid on timesheetapprovalnodes timesheetapprovalnodes42 (cost=0.27..3.30 rows=2 width=32) (actual rows= loops=)

  • Index Cond: (timesheetid = timesheet41.id)
80. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (nodeid = timesheetapprovalnodes42.id)
  • Filter: (userid = 213)
81. 0.000 0.000 ↓ 0.0

Index Scan using ixtsarkvtsapprovalrequestid on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue40 (cost=0.28..13.42 rows=14 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)
82. 0.000 0.000 ↓ 0.0

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

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

Nested Loop (cost=10.14..35.42 rows=1 width=32) (actual rows= loops=)

84. 0.000 0.000 ↓ 0.0

Nested Loop (cost=9.71..34.85 rows=1 width=16) (actual rows= loops=)

85. 0.000 0.000 ↓ 0.0

Nested Loop (cost=9.28..33.15 rows=1 width=16) (actual rows= loops=)

86. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8.85..32.59 rows=1 width=16) (actual rows= loops=)

87. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8.43..30.99 rows=1 width=16) (actual rows= loops=)

88. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8.00..28.21 rows=1 width=16) (actual rows= loops=)

89. 0.000 0.000 ↓ 0.0

Nested Loop (cost=7.57..25.76 rows=1 width=16) (actual rows= loops=)

90. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.70..17.86 rows=1 width=16) (actual rows= loops=)

91. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet46 (cost=0.29..4.40 rows=3 width=16) (actual rows= loops=)

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

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

  • Index Cond: (timesheetid = timesheet46.id)
  • Filter: (userid = 213)
93. 0.000 0.000 ↓ 0.0

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

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

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

95. 0.000 0.000 ↓ 0.0

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

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

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

  • Index Cond: (upper(uri) = 'URN:REPLICON-TENANT:A767CD9BFF05407A9D98C988F93A21DB:USER:213'::text)
97. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalhistorykeyvalue_pkey on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue49 (cost=0.43..2.45 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)
98. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue50 (cost=0.43..2.77 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)
99. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue51 (cost=0.43..1.56 rows=4 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue52 (cost=0.43..0.55 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)
101. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue53 (cost=0.43..1.66 rows=4 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue45 (cost=0.43..0.53 rows=4 width=88) (actual rows= loops=)

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

Nested Loop (cost=1.51..10.76 rows=1 width=32) (actual rows= loops=)

104. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.23..8.45 rows=1 width=84) (actual rows= loops=)

105. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.95..7.02 rows=1 width=100) (actual rows= loops=)

106. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.68..4.72 rows=1 width=100) (actual rows= loops=)

107. 0.000 0.000 ↓ 0.0

Index Scan using ixtsarkvkey on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue54 (cost=0.41..1.42 rows=1 width=88) (actual rows= loops=)

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

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

  • Index Cond: (id = tsapprovalrequestkeyvalue54.tsapprovalrequestid)
  • Filter: (userid = 213)
109. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (id = tsapprovalrequest57.nodeid)
110. 0.000 0.000 ↓ 0.0

Index Scan using timesheet_pkey on timesheet timesheet55 (cost=0.29..1.05 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = timesheetapprovalnodes56.timesheetid)
  • Filter: ((startdate <= timeentryrevision34.entrydate) AND (enddate >= timeentryrevision34.entrydate) AND (userid = timeentryrevision34.userid))
111. 0.000 0.000 ↓ 0.0

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

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

Nested Loop (cost=10.14..39.22 rows=1 width=32) (actual rows= loops=)

113. 0.000 0.000 ↓ 0.0

Nested Loop (cost=9.71..38.65 rows=1 width=16) (actual rows= loops=)

114. 0.000 0.000 ↓ 0.0

Nested Loop (cost=9.28..33.15 rows=1 width=16) (actual rows= loops=)

115. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8.85..32.59 rows=1 width=16) (actual rows= loops=)

116. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8.43..30.99 rows=1 width=16) (actual rows= loops=)

117. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8.00..28.21 rows=1 width=16) (actual rows= loops=)

118. 0.000 0.000 ↓ 0.0

Nested Loop (cost=7.57..25.76 rows=1 width=16) (actual rows= loops=)

119. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.70..17.86 rows=1 width=16) (actual rows= loops=)

120. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet60 (cost=0.29..4.40 rows=3 width=16) (actual rows= loops=)

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

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

  • Index Cond: (timesheetid = timesheet60.id)
  • Filter: (userid = 213)
122. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue62 (cost=6.87..7.89 rows=1 width=32) (actual rows= loops=)

  • Recheck Cond: ((timesheetapprovalhistoryid = timesheetapprovalhistory61.id) AND (upper(uri) = 'URN:REPLICON-TENANT:A767CD9BFF05407A9D98C988F93A21DB:USER:213'::text))
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-NODES'::text)
123. 0.000 0.000 ↓ 0.0

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

124. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (timesheetapprovalhistoryid = timesheetapprovalhistory61.id)
125. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (upper(uri) = 'URN:REPLICON-TENANT:A767CD9BFF05407A9D98C988F93A21DB:USER:213'::text)
126. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalhistorykeyvalue_pkey on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue63 (cost=0.43..2.45 rows=1 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue64 (cost=0.43..2.77 rows=1 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue65 (cost=0.43..1.56 rows=4 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue64.id)
129. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue66 (cost=0.43..0.55 rows=1 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue67 (cost=0.43..5.45 rows=4 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue66.id)
131. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue59 (cost=0.43..0.53 rows=4 width=88) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue67.id)
132. 0.000 0.000 ↓ 0.0

Index Scan using ixtemrtimeentryid on timeentrymetadatarevision timeentrymetadatarevision68 (cost=112.06..161.02 rows=1 width=0) (actual rows= loops=)

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

SubPlan (for Index Scan)

134. 0.000 0.000 ↓ 0.0

Index Scan using ixprjprojectleaderapproverid on project project69 (cost=0.29..107.83 rows=122 width=32) (actual rows= loops=)

  • Index Cond: (projectleaderapproverid = 213)
135. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.29..3.36 rows=1 width=32) (actual rows= loops=)

136. 0.000 0.000 ↓ 0.0

Seq Scan on task task70 (cost=0.00..1.01 rows=1 width=8) (actual rows= loops=)

137. 0.000 0.000 ↓ 0.0

Index Scan using project_pkey on project project71 (cost=0.29..2.31 rows=1 width=4) (actual rows= loops=)

  • Index Cond: (id = task70.projectid)
  • Filter: (projectleaderapproverid = 213)
138. 0.000 0.000 ↓ 0.0

Index Scan using ixtemrtimeentryid on timeentrymetadatarevision timeentrymetadatarevision72 (cost=112.06..161.02 rows=1 width=0) (actual rows= loops=)

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

SubPlan (for Index Scan)

140. 0.000 0.000 ↓ 0.0

Index Scan using ixprjprojectleaderapproverid on project project73 (cost=0.29..107.83 rows=122 width=32) (actual rows= loops=)

  • Index Cond: (projectleaderapproverid = 213)
141. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.29..3.36 rows=1 width=32) (actual rows= loops=)

142. 0.000 0.000 ↓ 0.0

Seq Scan on task task74 (cost=0.00..1.01 rows=1 width=8) (actual rows= loops=)

143. 0.000 0.000 ↓ 0.0

Index Scan using project_pkey on project project75 (cost=0.29..2.31 rows=1 width=4) (actual rows= loops=)

  • Index Cond: (id = task74.projectid)
  • Filter: (projectleaderapproverid = 213)
144. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.39..33.46 rows=1 width=32) (actual rows= loops=)

145. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.11..28.28 rows=14 width=84) (actual rows= loops=)

146. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.83..14.72 rows=1 width=4) (actual rows= loops=)

147. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.56..14.35 rows=1 width=16) (actual rows= loops=)

148. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet77 (cost=0.29..4.40 rows=3 width=16) (actual rows= loops=)

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

Index Scan using ixtantimesheetid on timesheetapprovalnodes timesheetapprovalnodes78 (cost=0.27..3.30 rows=2 width=32) (actual rows= loops=)

  • Index Cond: (timesheetid = timesheet77.id)
150. 0.000 0.000 ↓ 0.0

Index Scan using ixtarnodeid on tsapprovalrequest tsapprovalrequest79 (cost=0.27..0.33 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (nodeid = timesheetapprovalnodes78.id)
  • Filter: (userid = 213)
151. 0.000 0.000 ↓ 0.0

Index Scan using ixtsarkvtsapprovalrequestid on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue76 (cost=0.28..13.42 rows=14 width=88) (actual rows= loops=)

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

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

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

Nested Loop (cost=10.14..35.42 rows=1 width=32) (actual rows= loops=)

154. 0.000 0.000 ↓ 0.0

Nested Loop (cost=9.71..34.85 rows=1 width=16) (actual rows= loops=)

155. 0.000 0.000 ↓ 0.0

Nested Loop (cost=9.28..33.15 rows=1 width=16) (actual rows= loops=)

156. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8.85..32.59 rows=1 width=16) (actual rows= loops=)

157. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8.43..30.99 rows=1 width=16) (actual rows= loops=)

158. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8.00..28.21 rows=1 width=16) (actual rows= loops=)

159. 0.000 0.000 ↓ 0.0

Nested Loop (cost=7.57..25.76 rows=1 width=16) (actual rows= loops=)

160. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.70..17.86 rows=1 width=16) (actual rows= loops=)

161. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet82 (cost=0.29..4.40 rows=3 width=16) (actual rows= loops=)

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

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

  • Index Cond: (timesheetid = timesheet82.id)
  • Filter: (userid = 213)
163. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue84 (cost=6.87..7.89 rows=1 width=32) (actual rows= loops=)

  • Recheck Cond: ((timesheetapprovalhistoryid = timesheetapprovalhistory83.id) AND (upper(uri) = 'URN:REPLICON-TENANT:A767CD9BFF05407A9D98C988F93A21DB:USER:213'::text))
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-NODES'::text)
164. 0.000 0.000 ↓ 0.0

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

165. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (timesheetapprovalhistoryid = timesheetapprovalhistory83.id)
166. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (upper(uri) = 'URN:REPLICON-TENANT:A767CD9BFF05407A9D98C988F93A21DB:USER:213'::text)
167. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalhistorykeyvalue_pkey on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue85 (cost=0.43..2.45 rows=1 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue86 (cost=0.43..2.77 rows=1 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue87 (cost=0.43..1.56 rows=4 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue86.id)
170. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue88 (cost=0.43..0.55 rows=1 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue89 (cost=0.43..1.66 rows=4 width=32) (actual rows= loops=)

  • Index Cond: (parentid = sheetapprovalhistorykeyvalue88.id)
172. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue sheetapprovalhistorykeyvalue81 (cost=0.43..0.53 rows=4 width=88) (actual rows= loops=)

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

Index Scan using ixtemrtimeentryid on timeentrymetadatarevision timeentrymetadatarevision90 (cost=41.18..90.13 rows=1 width=0) (actual rows= loops=)

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

SubPlan (for Index Scan)

175. 0.000 0.000 ↓ 0.0

Nested Loop (cost=32.85..36.90 rows=6 width=32) (actual rows= loops=)

176. 0.000 0.000 ↓ 0.0

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

  • Group Key: resentativeprojectassignment92.projectid
177. 0.000 0.000 ↓ 0.0

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

178. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (userid = 213)
179. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (clientrepresentativeid = clientrepresentative93.id)
180. 0.000 0.000 ↓ 0.0

Index Only Scan using project_pkey on project project91 (cost=0.29..0.70 rows=1 width=4) (actual rows= loops=)

  • Index Cond: (id = resentativeprojectassignment92.projectid)
181. 0.000 0.000 ↓ 0.0

Nested Loop Semi Join (cost=0.59..3.69 rows=1 width=32) (actual rows= loops=)

  • Join Filter: (task94.projectid = resentativeprojectassignment92_1.projectid)
182. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.29..3.31 rows=1 width=12) (actual rows= loops=)

183. 0.000 0.000 ↓ 0.0

Seq Scan on task task94 (cost=0.00..1.01 rows=1 width=8) (actual rows= loops=)

184. 0.000 0.000 ↓ 0.0

Index Only Scan using project_pkey on project project95 (cost=0.29..2.30 rows=1 width=4) (actual rows= loops=)

  • Index Cond: (id = task94.projectid)
185. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.30..0.36 rows=1 width=4) (actual rows= loops=)

186. 0.000 0.000 ↓ 0.0

Index Scan using uixcr_clientrepresentativeproject on clientrepresentativeprojectassignment resentativeprojectassignment92_1 (cost=0.15..0.17 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (projectid = project95.id)
187. 0.000 0.000 ↓ 0.0

Index Scan using clientrepresentative_pkey on clientrepresentative clientrepresentative93_1 (cost=0.15..0.18 rows=1 width=16) (actual rows= loops=)

  • Index Cond: (id = resentativeprojectassignment92_1.clientrepresentativeid)
  • Filter: (userid = 213)
188. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.39..33.46 rows=1 width=32) (actual rows= loops=)

189. 0.000 0.000 ↓ 0.0

Nested Loop (cost=1.11..28.28 rows=14 width=84) (actual rows= loops=)

190. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.83..14.72 rows=1 width=4) (actual rows= loops=)

191. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.56..14.35 rows=1 width=16) (actual rows= loops=)

192. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet97 (cost=0.29..4.40 rows=3 width=16) (actual rows= loops=)

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

Index Scan using ixtantimesheetid on timesheetapprovalnodes timesheetapprovalnodes98 (cost=0.27..3.30 rows=2 width=32) (actual rows= loops=)

  • Index Cond: (timesheetid = timesheet97.id)
194. 0.000 0.000 ↓ 0.0

Index Scan using ixtarnodeid on tsapprovalrequest tsapprovalrequest99 (cost=0.27..0.33 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (nodeid = timesheetapprovalnodes98.id)
  • Filter: (userid = 213)
195. 0.000 0.000 ↓ 0.0

Index Scan using ixtsarkvtsapprovalrequestid on tsapprovalrequestkeyvalue tsapprovalrequestkeyvalue96 (cost=0.28..13.42 rows=14 width=88) (actual rows= loops=)

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

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

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

Nested Loop (cost=10.14..35.42 rows=1 width=32) (actual rows= loops=)

198. 0.000 0.000 ↓ 0.0

Nested Loop (cost=9.71..34.85 rows=1 width=16) (actual rows= loops=)

199. 0.000 0.000 ↓ 0.0

Nested Loop (cost=9.28..33.15 rows=1 width=16) (actual rows= loops=)

200. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8.85..32.59 rows=1 width=16) (actual rows= loops=)

201. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8.43..30.99 rows=1 width=16) (actual rows= loops=)

202. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8.00..28.21 rows=1 width=16) (actual rows= loops=)

203. 0.000 0.000 ↓ 0.0

Nested Loop (cost=7.57..25.76 rows=1 width=16) (actual rows= loops=)

204. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.70..17.86 rows=1 width=16) (actual rows= loops=)

205. 0.000 0.000 ↓ 0.0

Index Scan using ixtsuseridstartdateenddate on timesheet timesheet102 (cost=0.29..4.40 rows=3 width=16) (actual rows= loops=)

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

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

  • Index Cond: (timesheetid = timesheet102.id)
  • Filter: (userid = 213)
207. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue104 (cost=6.87..7.89 rows=1 width=32) (actual rows= loops=)

  • Recheck Cond: ((timesheetapprovalhistoryid = timesheetapprovalhistory103.id) AND (upper(uri) = 'URN:REPLICON-TENANT:A767CD9BFF05407A9D98C988F93A21DB:USER:213'::text))
  • Filter: (upper(key) = 'URN:REPLICON:APPROVAL-HISTORICAL-ACTION-DATA-KEY:REMOVED-APPROVAL-REQUEST-NODES'::text)
208. 0.000 0.000 ↓ 0.0

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

209. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (timesheetapprovalhistoryid = timesheetapprovalhistory103.id)
210. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (upper(uri) = 'URN:REPLICON-TENANT:A767CD9BFF05407A9D98C988F93A21DB:USER:213'::text)
211. 0.000 0.000 ↓ 0.0

Index Scan using timesheetapprovalhistorykeyvalue_pkey on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue105 (cost=0.43..2.45 rows=1 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue106 (cost=0.43..2.77 rows=1 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue107 (cost=0.43..1.56 rows=4 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue108 (cost=0.43..0.55 rows=1 width=32) (actual rows= loops=)

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

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue109 (cost=0.43..1.66 rows=4 width=32) (actual rows= loops=)

  • Index Cond: (parentid = heetapprovalhistorykeyvalue108.id)
216. 0.000 0.000 ↓ 0.0

Index Scan using ixtahkvparentid on timesheetapprovalhistorykeyvalue heetapprovalhistorykeyvalue101 (cost=0.43..0.53 rows=4 width=88) (actual rows= loops=)

  • Index Cond: (parentid = heetapprovalhistorykeyvalue109.id)
217. 0.000 0.000 ↓ 0.0

Merge Right Join (cost=17.29..12,071.88 rows=824 width=4) (actual rows= loops=)

  • Merge Cond: (userhierarchy111.userid = timeoffs110.userid)
  • Filter: (((userhierarchy111.supervisorid = 213) AND ((userhierarchy111.startdate IS NULL) OR (userhierarchy111.startdate <= '2020-09-09'::date)) AND ((userhierarchy111.enddate IS NULL) OR (userhierarchy111.enddate >= '2020-09-09'::date))) OR (timeoffs110.userid = 213) OR (alternatives: SubPlan 24 or hashed SubPlan 25) OR (alternatives: SubPlan 26 or hashed SubPlan 27) OR (hashed SubPlan 28) OR (SubPlan 29) OR (SubPlan 30))
218. 0.000 0.000 ↓ 0.0

Index Scan using ix3uh_usersuperstart on userhierarchy userhierarchy111 (cost=0.28..49.73 rows=830 width=24) (actual rows= loops=)

219. 0.000 0.000 ↓ 0.0

Index Scan using ixto4userid on timeoffs timeoffs110 (cost=0.28..48.02 rows=850 width=16) (actual rows= loops=)

220.          

SubPlan (for Merge Right Join)

221. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.30..11.23 rows=1 width=0) (actual rows= loops=)

222. 0.000 0.000 ↓ 0.0

Index Scan using ixtoantimeoffid on timeoffapprovalnodes timeoffapprovalnodes112 (cost=0.15..5.22 rows=4 width=16) (actual rows= loops=)

  • Index Cond: (timeoffid = timeoffs110.id)
223. 0.000 0.000 ↓ 0.0

Index Only Scan using uix2toaraidnid on timeoffapprovalrequest timeoffapprovalrequest113 (cost=0.15..1.42 rows=1 width=16) (actual rows= loops=)

  • Index Cond: ((approverid = 213) AND (nodeid = timeoffapprovalnodes112.id))
224. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.30..15.45 rows=7 width=4) (actual rows= loops=)

225. 0.000 0.000 ↓ 0.0

Index Only Scan using uix2toaraidnid on timeoffapprovalrequest timeoffapprovalrequest113_1 (cost=0.15..7.28 rows=7 width=16) (actual rows= loops=)

  • Index Cond: (approverid = 213)
226. 0.000 0.000 ↓ 0.0

Index Scan using timeoffapprovalnodes_pkey on timeoffapprovalnodes timeoffapprovalnodes112_1 (cost=0.15..1.17 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (id = timeoffapprovalrequest113_1.nodeid)
227. 0.000 0.000 ↓ 0.0

Index Scan using ixtoahtimeoffid on timeoffapprovalhistory timeoffapprovalhistory114 (cost=0.28..2.70 rows=1 width=0) (actual rows= loops=)

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

Index Scan using ixtoahuserid on timeoffapprovalhistory timeoffapprovalhistory114_1 (cost=0.28..5.05 rows=2 width=4) (actual rows= loops=)

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

Nested Loop (cost=0.55..16.66 rows=6 width=4) (actual rows= loops=)

230. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.27..8.30 rows=16 width=12) (actual rows= loops=)

231. 0.000 0.000 ↓ 0.0

Seq Scan on divisionflathierarchy divisionflathierarchy117 (cost=0.00..1.15 rows=1 width=16) (actual rows= loops=)

  • Filter: (parentid = '79e45bea-3f4a-43b7-a7a9-fb153acc2896'::uuid)
232. 0.000 0.000 ↓ 0.0

Index Only Scan using ix4ud_userdivisionstartend on userdivision userdivision116 (cost=0.27..6.95 rows=20 width=28) (actual rows= loops=)

  • Index Cond: (divisionid = divisionflathierarchy117.childid)
233. 0.000 0.000 ↓ 0.0

Index Scan using ixto4userid on timeoffs timeoffs115 (cost=0.28..0.51 rows=1 width=16) (actual rows= loops=)

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

CTE Scan on timesheet0cte timesheet118 (cost=0.00..0.06 rows=1 width=0) (actual rows= loops=)

  • Filter: ((timeoffs110.startdate <= enddate2) AND (timeoffs110.enddate >= startdate1) AND (userid0 = timeoffs110.userid) AND ((('URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-DATA-ACCESS-LEVELS'::text = upper(key3)) AND ('URN:REPLICON:TIME-OFF-DATA-ACCESS-LEVEL:TIMESHEET-APPROVER'::text = upper(uri4))) OR (('URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-ACCESSIBLE-OBJECTS'::text = upper(key3)) AND (upper(('urn:replicon-tenant:a767cd9bff05407a9d98c988f93a21db:time-off:'::text || COALESCE((timeoffs110.id)::text, ''::text))) = upper(uri4)))))
235. 0.000 0.000 ↓ 0.0

CTE Scan on timesheet5cte timesheet119 (cost=0.00..0.06 rows=1 width=0) (actual rows= loops=)

  • Filter: ((timeoffs110.startdate <= enddate7) AND (timeoffs110.enddate >= startdate6) AND (userid5 = timeoffs110.userid) AND ((('URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-DATA-ACCESS-LEVELS'::text = upper(uri8)) AND ('URN:REPLICON:TIME-OFF-DATA-ACCESS-LEVEL:TIMESHEET-APPROVER'::text = upper(uri9))) OR (('URN:REPLICON:APPROVAL-REQUEST-METADATA-KEY:ADDITIONAL-APPROVER-ACCESSIBLE-OBJECTS'::text = upper(uri8)) AND (upper(('urn:replicon-tenant:a767cd9bff05407a9d98c988f93a21db:time-off:'::text || COALESCE((timeoffs110.id)::text, ''::text))) = upper(uri9)))))
236. 0.000 0.000 ↓ 0.0

Subquery Scan on *SELECT* 2 (cost=7,226,972,514.28..7,226,972,518.32 rows=1 width=40) (actual rows= loops=)

  • Filter: ((hashed SubPlan 23) OR (hashed SubPlan 31))
237. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.55..4.57 rows=1 width=140) (actual rows= loops=)

238. 0.000 0.000 ↓ 0.0

Index Scan using timeoffentries_pkey on timeoffentries toe (cost=0.28..1.47 rows=1 width=24) (actual rows= loops=)

  • Index Cond: (id IS NULL)
  • Filter: ((entrydate >= '2020-08-01'::date) AND (entrydate <= '2020-08-31'::date) AND (duration >= '00:00:00.36'::interval))
239. 0.000 0.000 ↓ 0.0

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

  • Index Cond: (id = toe.timeoffid)
  • Filter: (userid = 84)
240. 0.000 0.000 ↓ 0.0

Index Scan using ixtem2timeentryid on timeentrymetadata timeentrymetadata26 (cost=0.56..2.58 rows=1 width=74) (actual rows= loops=)

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

Index Scan using ixtem2timeentryid on timeentrymetadata timeentrymetadata24 (cost=0.56..2.58 rows=1 width=74) (actual rows= loops=)

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

Index Scan using ixtem2timeentryid on timeentrymetadata timeentrymetadata22 (cost=0.56..2.58 rows=1 width=74) (actual rows= loops=)

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

Index Only Scan using project_pkey on project project23 (cost=0.30..0.32 rows=1 width=4) (actual rows= loops=)

  • Index Cond: (id = CASE WHEN ("substring"(timeentrymetadata22.uri, '^urn:replicon-tenant:a767cd9bff05407a9d98c988f93a21db:project:(.*)$'::text) ~ '^\s*[-]?[0-9]+\s*$'::text) THEN ("substring"(timeentrymetadata22.uri, '^urn:replicon-tenant:a767cd9bff05407a9d98c988f93a21db:project:(.*)$'::text))::integer ELSE NULL::integer END)
244. 0.000 0.000 ↓ 0.0

Materialize (cost=0.00..1.01 rows=1 width=8) (actual rows= loops=)

245. 0.000 0.000 ↓ 0.0

Seq Scan on task task25 (cost=0.00..1.01 rows=1 width=8) (actual rows= loops=)

246. 0.000 0.000 ↓ 0.0

Index Scan using project_pkey on project pj (cost=0.29..2.30 rows=1 width=43) (actual rows= loops=)

  • Index Cond: (id = COALESCE(project23.id, task25.projectid))
247. 0.000 0.000 ↓ 0.0

Materialize (cost=0.28..2.30 rows=1 width=34) (actual rows= loops=)

248. 0.000 0.000 ↓ 0.0

Index Scan using userinfo_pkey on userinfo ui (cost=0.28..2.29 rows=1 width=34) (actual rows= loops=)

  • Index Cond: (id = 84)
249. 0.000 0.000 ↓ 0.0

Materialize (cost=0.42..4.50 rows=1 width=28) (actual rows= loops=)

250. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.42..4.50 rows=1 width=28) (actual rows= loops=)

251. 0.000 0.000 ↓ 0.0

Index Only Scan using ix4usc_userservicecenterstartend on userservicecenter userservicecenter27 (cost=0.28..2.29 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (userid = 84)
252. 0.000 0.000 ↓ 0.0

Index Scan using servicecenter_pkey on servicecenter servicecenter19 (cost=0.14..2.16 rows=1 width=40) (actual rows= loops=)

  • Index Cond: (userservicecenter27.servicecenterid = id)
253. 0.000 0.000 ↓ 0.0

Index Scan using userinfo_pkey on userinfo userinfo17 (cost=0.28..0.30 rows=1 width=19) (actual rows= loops=)

  • Index Cond: (pj.projectleaderapproverid = id)
254. 0.000 0.000 ↓ 0.0

Materialize (cost=0.28..2.30 rows=1 width=27) (actual rows= loops=)

255. 0.000 0.000 ↓ 0.0

Index Scan using login_pkey on login (cost=0.28..2.29 rows=1 width=27) (actual rows= loops=)

  • Index Cond: (userid = 84)
256. 0.000 0.000 ↓ 0.0

Index Scan using ixtem2timeentryid on timeentrymetadata timeentrymetadata28 (cost=0.56..2.58 rows=1 width=74) (actual rows= loops=)

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

Index Scan using activities_pkey on activities activities20 (cost=0.29..0.31 rows=1 width=37) (actual rows= loops=)

  • Index Cond: (CASE WHEN ("substring"(timeentrymetadata28.uri, '^urn:replicon-tenant:a767cd9bff05407a9d98c988f93a21db:activity:(.*)$'::text) ~ '^\s*[-]?[0-9]+\s*$'::text) THEN ("substring"(timeentrymetadata28.uri, '^urn:replicon-tenant:a767cd9bff05407a9d98c988f93a21db:activity:(.*)$'::text))::integer ELSE NULL::integer END = id)
258. 0.000 0.000 ↓ 0.0

Materialize (cost=0.27..1.29 rows=1 width=20) (actual rows= loops=)

259. 0.000 0.000 ↓ 0.0

Index Only Scan using ix4ud_userdivisionstartend on userdivision userdivision29 (cost=0.27..1.29 rows=1 width=20) (actual rows= loops=)

  • Index Cond: (userid = 84)
260. 0.000 0.000 ↓ 0.0

Hash (cost=1.12..1.12 rows=12 width=29) (actual rows= loops=)

261. 0.000 0.000 ↓ 0.0

Seq Scan on division division21 (cost=0.00..1.12 rows=12 width=29) (actual rows= loops=)

262. 0.000 0.000 ↓ 0.0

Materialize (cost=0.28..1.30 rows=1 width=4) (actual rows= loops=)

263. 0.000 0.000 ↓ 0.0

Index Only Scan using userinfo_pkey on userinfo userinfo30 (cost=0.28..1.29 rows=1 width=4) (actual rows= loops=)

  • Index Cond: (id = 84)
264. 0.000 0.000 ↓ 0.0

Materialize (cost=0.28..2.30 rows=1 width=4) (actual rows= loops=)

265. 0.000 0.000 ↓ 0.0

Index Scan using userinfo_pkey on userinfo userinfo31 (cost=0.28..2.29 rows=1 width=4) (actual rows= loops=)

  • Index Cond: (id = 84)
  • Filter: (NOT disabled)
266. 0.000 0.000 ↓ 0.0

Materialize (cost=0.28..2.32 rows=1 width=4) (actual rows= loops=)

267. 0.000 0.000 ↓ 0.0

Index Only Scan using ix4ucc_userdepartmentgroupstartend on userdepartmentgroup userdepartmentgroup32 (cost=0.28..2.31 rows=1 width=4) (actual rows= loops=)

  • Index Cond: ((userid = 84) AND (startdate <= '2020-09-09'::date) AND (enddate >= '2020-09-09'::date))
  • Filter: (departmentgroupid = ANY ('{e2e53526-a98a-411e-a60b-8516cf848f90,81933a47-4b21-40db-9d1a-accdc4fa41c2,1cc055f1-fd87-4443-b31d-30d92b97e0b7,bacd201b-6f3b-46b3-8f36-97f536002011,595345e2-afba-43f9-a04b-977c415803c1,6c4e7087-0d1e-44d1-b775-91562ffdca2d,b2743a20-6050-4121-aa9b-7887d3b789c0,4e087885-acbe-422a-a2b3-991cf380926e,8c4bf4b2-492f-4ec7-a28f-72f35acaa01d,a9fc111d-7665-43b2-97b1-33163fdc2cc2,9aeee61c-63b8-4a5c-a4cc-7d71729a2861,f340b1fc-4422-4f42-9860-33734e82c263,61ed8e41-cbde-4b7c-83a4-c6a777b04ecd,ccfdfe09-9462-4879-8f0d-41c0384c567b}'::uuid[]))