PostgreSQL Source Code: src/include/nodes/execnodes.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29#ifndef EXECNODES_H
30#define EXECNODES_H
31
52
53struct PlanState;
58struct RangeTblEntry;
59struct ExprEvalStep;
62
63
64
65
66
67
68
69
70
73 bool *isNull);
74
75
76
77#define EEO_FLAG_IS_QUAL (1 << 0)
78
79#define EEO_FLAG_HAS_OLD (1 << 1)
80
81#define EEO_FLAG_HAS_NEW (1 << 2)
82
83#define EEO_FLAG_OLD_IS_NULL (1 << 3)
84
85#define EEO_FLAG_NEW_IS_NULL (1 << 4)
86
88{
90
91#define FIELDNO_EXPRSTATE_FLAGS 1
93
94
95
96
97
98#define FIELDNO_EXPRSTATE_RESNULL 2
100#define FIELDNO_EXPRSTATE_RESVALUE 3
102
103
104
105
106#define FIELDNO_EXPRSTATE_RESULTSLOT 4
108
109
110
111
113
114
115
116
117
119
120
122
123
125
126
127
128
129
130
132 int steps_alloc;
133
134#define FIELDNO_EXPRSTATE_PARENT 11
137
140
143
144
145
146
147
148
149
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
194{
223
224
225
226
227
228
229
231
233{
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
263{
265
266
267#define FIELDNO_EXPRCONTEXT_SCANTUPLE 1
269#define FIELDNO_EXPRCONTEXT_INNERTUPLE 2
271#define FIELDNO_EXPRCONTEXT_OUTERTUPLE 3
273
274
277
278
281
282
283
284
285
286#define FIELDNO_EXPRCONTEXT_AGGVALUES 8
288#define FIELDNO_EXPRCONTEXT_AGGNULLS 9
290
291
292#define FIELDNO_EXPRCONTEXT_CASEDATUM 10
294#define FIELDNO_EXPRCONTEXT_CASENULL 11
296
297
298#define FIELDNO_EXPRCONTEXT_DOMAINDATUM 12
300#define FIELDNO_EXPRCONTEXT_DOMAINNULL 13
302
303
304#define FIELDNO_EXPRCONTEXT_OLDTUPLE 14
306#define FIELDNO_EXPRCONTEXT_NEWTUPLE 15
308
309
311
312
315
316
317
318
319
320typedef enum
321{
326
327
328
329
330
331
332
333typedef enum
334{
340
341
342
343
344
345
346
348{
350
353 int allowedModes;
354
357
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
378{
380
382
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
411{
418
419
420
421
422
423
425{
427
433
434
435
436
437
438
439
441{
443
446
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
468{
470
471
473
474
476
477
479
480
482
483
485
486
487
488
489
491
492
494
496
497
499
501
503
505
506
508
509
511
512
514
515
517
518
520
521
526
527
529
530
532
533
535
536
539 int ri_BatchSize;
542
543
545
546
548
549
551
552
553
554
555
557
558
559
560
563
564
567
568
570
571
573
574
576
577
579
580
582
583
585
586
588
589
590
591
592
593
594
597
598
599
600
603
604
605
606
607
608
609
610
611
612
613
614
617
618
620
621
622
623
624
627
628
629
630
631
632
633
635{
642
644
645
646
647
648
649
650
652{
654
655
662
664
672
673
674
676
678
679
681
682
684
685
687
688
689
691
692
693
694
695
697
698
700
701
704
706
707
709
711
713
715
716
719 bool es_finished;
720 bool es_aborted;
721
723
725
727
728
729
730
731
732
734
735
736
737
738
739
740
742
744
746
748
749
750
752
753
754
755
756
757
758
759
760
761
765
766
767
768
769
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
795{
808
809
810
811
812
813
814
815
816
817
819{
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
845
847{
852
853
854#define SH_PREFIX tuplehash
855#define SH_ELEMENT_TYPE TupleHashEntryData
856#define SH_KEY_TYPE MinimalTuple
857#define SH_SCOPE extern
858#define SH_DECLARE
860
862{
873
879
881
882
883
884
885
886
887#define InitTupleHashIterator(htable, iter) \
888 tuplehash_start_iterate(htable->hashtab, iter)
889#define TermTupleHashIterator(iter) \
890 ((void) 0)
891#define ResetTupleHashIterator(htable, iter) \
892 InitTupleHashIterator(htable, iter)
893#define ScanTupleHashTable(htable, iter) \
894 tuplehash_iterate(htable->hashtab, iter)
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
914{
921
922
923
924
925
926
927
928
929
930
931
933{
937
938
939
940
941
942
944
945
946
947
948
949
951
952
953
954
955
956
959
960
961
962
963
966
967
968
969
970
972
973
974
975
976
977
978
979
981
982
983
984
985
986
987
988 bool shutdown_reg;
989
990
991
992
993
994
997
998
999
1000
1001
1003{
1011
1023
1026
1033
1034
1035
1036
1037
1038
1039
1040
1042{
1046
1048{
1055
1056
1057
1058
1059
1060
1061
1063{
1064
1066
1067
1069
1070
1072
1073
1075
1076
1077
1078
1079
1080
1081
1082
1083
1085
1086
1088
1089
1090
1091
1092
1095
1096
1097
1098
1099
1100
1102
1103
1104
1105
1106
1107
1108
1110
1111
1112
1113
1114
1116
1117
1118
1119
1120
1121
1122
1123
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1145
1146
1147
1148
1149
1150
1151
1152
1154{
1156
1158
1160
1162
1163
1164
1167
1168
1171
1172
1174
1175
1176
1177
1178
1179
1183
1185
1187
1188
1189
1190
1192
1193
1194
1195
1200
1202
1203
1204
1205
1206
1207
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1246
1247
1248
1249
1250
1251
1252
1253
1254#define innerPlanState(node) (((PlanState *)(node))->righttree)
1255#define outerPlanState(node) (((PlanState *)(node))->lefttree)
1256
1257
1258#define InstrCountTuples2(node, delta) \
1259 do { \
1260 if (((PlanState *)(node))->instrument) \
1261 ((PlanState *)(node))->instrument->ntuples2 += (delta); \
1262 } while (0)
1263#define InstrCountFiltered1(node, delta) \
1264 do { \
1265 if (((PlanState *)(node))->instrument) \
1266 ((PlanState *)(node))->instrument->nfiltered1 += (delta); \
1267 } while(0)
1268#define InstrCountFiltered2(node, delta) \
1269 do { \
1270 if (((PlanState *)(node))->instrument) \
1271 ((PlanState *)(node))->instrument->nfiltered2 += (delta); \
1272 } while(0)
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1293{
1294
1298
1299
1300
1301
1302
1303
1304
1307
1308
1309
1310
1311
1312
1315
1316
1317
1318
1319
1320
1321
1323
1324
1325
1326
1328
1329
1330
1331
1332
1333
1335
1336
1337
1338
1339
1340
1342
1343
1344
1345
1346
1347
1348
1349
1351
1354
1355
1356
1357
1358
1359
1361{
1367
1368
1369
1370
1371
1372
1373
1374
1376{
1384
1385
1386
1387#define MERGE_INSERT 0x01
1388#define MERGE_UPDATE 0x02
1389#define MERGE_DELETE 0x04
1390
1391
1392
1393
1394
1396{
1403
1404
1405
1406
1407
1408
1409
1411
1414
1415
1416
1417
1418
1419
1420
1425
1426
1427
1428
1429
1431
1432
1434
1435
1437
1438
1440
1441
1443
1444
1446
1447
1448
1449
1450
1451
1453
1454
1458
1459
1460
1461
1462
1463
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1487
1489{
1500 bool as_syncdone;
1501
1505
1507
1515};
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1533{
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1558{
1564
1571
1572
1573
1574
1575
1577{
1582
1583
1584
1585
1586
1588{
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1614{
1620
1621
1622
1623
1624
1626{
1630
1631
1632
1633
1634
1636{
1640
1643 bool use_bulkread;
1644 bool use_pagemode;
1651
1652
1653
1654
1655
1656
1657typedef struct
1658{
1661 bool key_toastable;
1663
1664typedef struct
1665{
1671 bool *elem_nulls;
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1703{
1719
1720
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1755{
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1796{
1812
1813
1814
1815
1816
1817
1818
1819
1821{
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1840{
1845
1846
1847
1848
1849
1850
1851
1852
1853
1855{
1861
1862
1863
1864
1865
1866
1867
1868
1869
1871{
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1889{
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1911{
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1930{
1937
1938
1939
1940
1941
1942
1943
1944
1946{
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1968
1970{
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2006{
2014
2015
2016
2017
2018
2019
2020
2022{
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2053{
2058
2060
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2076{
2082
2083
2084
2085
2086
2087
2088
2089
2090
2092{
2096
2097
2098
2099
2100
2101
2102
2104{
2109
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2128
2130{
2133
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2152{
2155 bool single_match;
2156
2159
2160
2161
2162
2163
2164
2165
2166
2167
2169{
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2200
2202{
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2252
2254{
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2289{
2295
2299
2301{
2303
2305
2307
2309
2310
2311
2314
2315
2316
2317
2318
2320{
2324
2325
2326
2327
2328
2329
2330
2331
2333{
2337 struct memoize_hash *hashtable;
2343
2351
2352
2353
2355
2357
2358 bool binary_mode;
2359
2363
2365
2366
2367
2368
2369
2370
2371
2372
2374{
2379
2380
2381
2382
2383
2385{
2389
2390
2391
2392
2393
2395{
2401 bool bounded_Done;
2408
2409
2410
2411
2412
2414{
2422
2424{
2428
2429
2430
2431
2432
2434{
2438
2439
2440
2441
2442
2444{
2450
2452{
2456 bool outerNodeDone;
2462
2464
2466
2467
2473
2474
2475
2476
2477
2479{
2484
2485
2486
2487
2488
2490{
2495
2496
2497
2498
2499
2501{
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2524
2526{
2541#define FIELDNO_AGGSTATE_CURAGGCONTEXT 14
2544#define FIELDNO_AGGSTATE_CURPERTRANS 16
2549#define FIELDNO_AGGSTATE_CURRENT_SET 20
2550 int current_set;
2556
2562
2564
2566
2573
2579
2583
2587
2590
2593
2594
2595
2596#define FIELDNO_AGGSTATE_ALL_PERGROUPS 54
2598
2601
2602
2603
2604
2605
2606
2609
2610
2611
2612
2614{
2619
2621
2623{
2625
2626
2630
2644
2649
2655
2656
2660 bool inRangeAsc;
2662
2663
2665
2666
2667 bool top_window;
2668
2670
2671
2672
2673
2674
2680
2685
2688
2689 bool next_partition;
2691
2693
2695
2697
2698
2700
2703
2704
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2722{
2726
2727
2728
2729
2730
2731
2732
2733
2735{
2740
2743
2749
2750
2751
2752
2753
2754
2755
2756
2757
2759
2761{
2767
2772
2773
2781
2782
2783
2784
2785
2787{
2794
2795
2796
2797
2798
2800{
2804
2805
2806
2807
2808
2810{
2814
2817
2818
2819
2820
2821
2822
2823
2825
2826
2827
2828
2829
2830
2832
2833
2836
2837
2838
2839
2840
2841
2842
2843
2845{
2851
2853{
2855 bool setop_done;
2858
2859
2864
2865
2873
2874
2875
2876
2877
2878
2879
2881{
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2900{
2910
2912{
2924
2927
2928#endif
#define FLEXIBLE_ARRAY_MEMBER
void(* ExprContextCallbackFunction)(Datum arg)
struct WindowStatePerAggData * WindowStatePerAgg
struct IndexScanState IndexScanState
struct ExprContext ExprContext
struct ModifyTableState ModifyTableState
struct ResultState ResultState
struct SetOpStatePerInput SetOpStatePerInput
struct SubPlanState SubPlanState
struct SharedIncrementalSortInfo SharedIncrementalSortInfo
TupleTableSlot *(* ExecProcNodeMtd)(struct PlanState *pstate)
struct CteScanState CteScanState
struct PlanState PlanState
struct UniqueState UniqueState
struct SetOpState SetOpState
struct SharedMemoizeInfo SharedMemoizeInfo
struct HashState HashState
struct MemoizeState MemoizeState
struct IndexOnlyScanState IndexOnlyScanState
IncrementalSortExecutionStatus
struct GatherMergeState GatherMergeState
struct LimitState LimitState
struct ExprState ExprState
@ WINDOWAGG_PASSTHROUGH_STRICT
struct JunkFilter JunkFilter
struct ResultRelInfo ResultRelInfo
struct CustomScanState CustomScanState
struct OnConflictSetState OnConflictSetState
struct BitmapOrState BitmapOrState
struct IncrementalSortInfo IncrementalSortInfo
struct WindowFuncExprState WindowFuncExprState
struct HashJoinState HashJoinState
struct HashJoinTableData * HashJoinTable
struct SeqScanState SeqScanState
struct HashJoinTupleData * HashJoinTuple
struct TupleHashEntryData * TupleHashEntry
struct SortState SortState
struct BitmapAndState BitmapAndState
struct NestLoopState NestLoopState
struct MemoizeInstrumentation MemoizeInstrumentation
struct SharedBitmapHeapInstrumentation SharedBitmapHeapInstrumentation
struct SetExprState SetExprState
struct GroupState GroupState
struct BitmapHeapScanInstrumentation BitmapHeapScanInstrumentation
struct MaterialState MaterialState
struct WindowStatePerFuncData * WindowStatePerFunc
struct ExprContext_CB ExprContext_CB
struct TidRangeScanState TidRangeScanState
struct AggStatePerHashData * AggStatePerHash
struct TupleHashTableData * TupleHashTable
struct SampleScanState SampleScanState
struct GatherState GatherState
struct MergeJoinClauseData * MergeJoinClause
struct ParallelBitmapHeapState ParallelBitmapHeapState
struct MergeJoinState MergeJoinState
struct AggStatePerGroupData * AggStatePerGroup
struct ForeignScanState ForeignScanState
struct FunctionScanState FunctionScanState
struct AggStatePerPhaseData * AggStatePerPhase
struct WindowAggState WindowAggState
struct AggStatePerTransData * AggStatePerTrans
struct NamedTuplestoreScanState NamedTuplestoreScanState
struct SubqueryScanState SubqueryScanState
struct TableFuncScanState TableFuncScanState
struct RecursiveUnionState RecursiveUnionState
struct TupleHashEntryData TupleHashEntryData
struct SharedSortInfo SharedSortInfo
struct ScanState ScanState
tuplehash_iterator TupleHashIterator
struct MergeActionState MergeActionState
struct AggregateInstrumentation AggregateInstrumentation
struct TidScanState TidScanState
struct SharedHashInfo SharedHashInfo
struct ProjectSetState ProjectSetState
struct IncrementalSortState IncrementalSortState
struct JsonExprState JsonExprState
struct ReturnSetInfo ReturnSetInfo
struct AggStatePerAggData * AggStatePerAgg
@ SFRM_Materialize_Preferred
@ SFRM_Materialize_Random
struct IndexInfo IndexInfo
struct ProjectionInfo ProjectionInfo
struct DomainConstraintState DomainConstraintState
struct PresortedKeyData PresortedKeyData
struct HashInstrumentation HashInstrumentation
struct AsyncRequest AsyncRequest
struct IncrementalSortGroupInfo IncrementalSortGroupInfo
struct TupleHashTableData TupleHashTableData
struct JoinState JoinState
struct WorkTableScanState WorkTableScanState
struct BitmapHeapScanState BitmapHeapScanState
struct BitmapIndexScanState BitmapIndexScanState
struct SharedAggInfo SharedAggInfo
struct LockRowsState LockRowsState
struct ExecRowMark ExecRowMark
struct MergeAppendState MergeAppendState
Datum(* ExprStateEvalFunc)(struct ExprState *expression, struct ExprContext *econtext, bool *isNull)
struct ExecAuxRowMark ExecAuxRowMark
struct ValuesScanState ValuesScanState
#define NUM_MERGE_MATCH_KINDS
MemoryContext hash_metacxt
Tuplesortstate * sort_out
AggStatePerGroup * all_pergroups
AggStatePerGroup * hash_pergroup
int hash_planned_partitions
ExprContext * curaggcontext
MemoryContext hash_tablecxt
AggStatePerTrans curpertrans
AggStatePerTrans pertrans
struct LogicalTapeSet * hash_tapeset
ExprContext * hashcontext
SharedAggInfo * shared_info
uint64 hash_ngroups_limit
AggStatePerGroup * pergroups
uint64 hash_ngroups_current
TupleTableSlot * hash_spill_wslot
struct HashAggSpill * hash_spills
TupleTableSlot * sort_slot
TupleTableSlot * hash_spill_rslot
ExprContext ** aggcontexts
Bitmapset * colnos_needed
struct PartitionPruneState * as_prune_state
Bitmapset * as_valid_asyncplans
Bitmapset * as_needrequest
AsyncRequest ** as_asyncrequests
Bitmapset * as_asyncplans
struct WaitEventSet * as_eventset
bool(* choose_next_subplan)(AppendState *)
int as_first_partial_plan
ParallelAppendState * as_pstate
Bitmapset * as_valid_subplans
TupleTableSlot ** as_asyncresults
bool as_valid_subplans_identified
struct PlanState * requestor
struct PlanState * requestee
ParallelBitmapHeapState * pstate
ExprState * bitmapqualorig
BitmapHeapScanInstrumentation stats
SharedBitmapHeapInstrumentation * sinstrument
bool biss_RuntimeKeysReady
ExprContext * biss_RuntimeContext
IndexArrayKeyInfo * biss_ArrayKeys
IndexRuntimeKeyInfo * biss_RuntimeKeys
SharedIndexScanInstrumentation * biss_SharedInfo
struct ScanKeyData * biss_ScanKeys
struct IndexScanDescData * biss_ScanDesc
Relation biss_RelationDesc
IndexScanInstrumentation biss_Instrument
Tuplestorestate * cte_table
struct CteScanState * leader
const struct TupleTableSlotOps * slotOps
const struct CustomExecMethods * methods
DomainConstraintType constrainttype
ExprState * check_exprstate
ExecAuxRowMark ** relsubs_rowmark
TupleTableSlot * origslot
TupleTableSlot ** relsubs_slot
PlanState * recheckplanstate
List * es_part_prune_infos
struct dsa_area * es_query_dsa
struct ExecRowMark ** es_rowmarks
int es_parallel_workers_to_launch
List * es_tuple_routing_result_relations
struct JitContext * es_jit
PlannedStmt * es_plannedstmt
QueryEnvironment * es_queryEnv
ResultRelInfo ** es_result_relations
struct JitInstrumentation * es_jit_worker_instr
ParamExecData * es_param_exec_vals
CachedPlan * es_cachedplan
uint64 es_total_processed
Bitmapset * es_unpruned_relids
List * es_part_prune_states
ParamListInfo es_param_list_info
List * es_insert_pending_result_relations
MemoryContext es_query_cxt
ScanDirection es_direction
struct EPQState * es_epq_active
PartitionDirectory es_partition_directory
List * es_trig_target_relations
List * es_opened_result_relations
bool es_use_parallel_mode
ExprContext * es_per_tuple_exprcontext
int es_parallel_workers_launched
Index es_range_table_size
List * es_insert_pending_modifytables
const char * es_sourceText
List * es_auxmodifytables
JunkFilter * es_junkFilter
List * es_part_prune_results
Snapshot es_crosscheck_snapshot
LockClauseStrength strength
LockWaitPolicy waitPolicy
struct ExprContext_CB * next
ExprContextCallbackFunction function
ParamListInfo ecxt_param_list_info
MemoryContext ecxt_per_tuple_memory
TupleTableSlot * ecxt_innertuple
ParamExecData * ecxt_param_exec_vals
TupleTableSlot * ecxt_newtuple
TupleTableSlot * ecxt_scantuple
TupleTableSlot * ecxt_oldtuple
MemoryContext ecxt_per_query_memory
ExprContext_CB * ecxt_callbacks
struct EState * ecxt_estate
TupleTableSlot * ecxt_outertuple
struct ExprEvalStep * steps
ExprStateEvalFunc evalfunc
Datum * innermost_domainval
bool * innermost_domainnull
TupleTableSlot * resultslot
struct PlanState * parent
bool * innermost_casenull
Datum * innermost_caseval
ErrorSaveContext * escontext
struct FdwRoutine * fdwroutine
ExprState * fdw_recheck_quals
ResultRelInfo * resultRelInfo
struct FunctionScanPerFuncState * funcstates
struct ParallelExecutorInfo * pei
struct TupleQueueReader ** reader
struct GMReaderTupleBuffer * gm_tuple_buffers
TupleTableSlot ** gm_slots
bool need_to_scan_locally
struct binaryheap * gm_heap
TupleTableSlot * funnel_slot
struct ParallelExecutorInfo * pei
struct TupleQueueReader ** reader
bool need_to_scan_locally
HashJoinTuple hj_CurTuple
TupleTableSlot * hj_NullOuterTupleSlot
TupleTableSlot * hj_OuterTupleSlot
TupleTableSlot * hj_NullInnerTupleSlot
TupleTableSlot * hj_FirstOuterTupleSlot
HashJoinTable hj_HashTable
TupleTableSlot * hj_HashTupleSlot
struct ParallelHashJoinState * parallel_state
SharedHashInfo * shared_info
FmgrInfo * skew_hashfunction
HashInstrumentation * hinstrument
int64 totalMemorySpaceUsed
IncrementalSortGroupInfo prefixsortGroupInfo
IncrementalSortGroupInfo fullsortGroupInfo
Tuplesortstate * prefixsort_state
TupleTableSlot * group_pivot
TupleTableSlot * transfer_tuple
Tuplesortstate * fullsort_state
SharedIncrementalSortInfo * shared_info
IncrementalSortExecutionStatus execution_status
PresortedKeyData * presorted_keys
IncrementalSortInfo incsort_info
int64 n_fullsort_remaining
struct ScanKeyData * scan_key
uint16 * ii_ExclusionStrats
ExprState * ii_PredicateState
List * ii_ExpressionsState
AttrNumber ii_IndexAttrNumbers[INDEX_MAX_KEYS]
SharedIndexScanInstrumentation * ioss_SharedInfo
TupleTableSlot * ioss_TableSlot
bool ioss_RuntimeKeysReady
int ioss_NameCStringCount
struct ScanKeyData * ioss_ScanKeys
struct ScanKeyData * ioss_OrderByKeys
struct IndexScanDescData * ioss_ScanDesc
ExprContext * ioss_RuntimeContext
AttrNumber * ioss_NameCStringAttNums
Relation ioss_RelationDesc
IndexScanInstrumentation ioss_Instrument
IndexRuntimeKeyInfo * ioss_RuntimeKeys
struct ScanKeyData * scan_key
bool * iss_OrderByTypByVals
struct IndexScanDescData * iss_ScanDesc
IndexScanInstrumentation iss_Instrument
ExprState * indexqualorig
Relation iss_RelationDesc
pairingheap * iss_ReorderQueue
bool iss_RuntimeKeysReady
SortSupport iss_SortSupport
struct ScanKeyData * iss_ScanKeys
SharedIndexScanInstrumentation * iss_SharedInfo
ExprContext * iss_RuntimeContext
struct ScanKeyData * iss_OrderByKeys
Datum * iss_OrderByValues
int16 * iss_OrderByTypLens
IndexRuntimeKeyInfo * iss_RuntimeKeys
FunctionCallInfo input_fcinfo
ErrorSaveContext escontext
NullableDatum formatted_expr
TupleDesc jf_cleanTupType
TupleTableSlot * jf_resultSlot
TupleTableSlot * last_slot
Tuplestorestate * tuplestorestate
TupleTableSlot * probeslot
SharedMemoizeInfo * shared_info
struct MemoizeEntry * entry
ExprState * cache_eq_expr
MemoizeInstrumentation stats
MemoryContext tableContext
struct memoize_hash * hashtable
TupleTableSlot * tableslot
struct MemoizeTuple * last_tuple
ProjectionInfo * mas_proj
Bitmapset * ms_valid_subplans
struct binaryheap * ms_heap
TupleTableSlot ** ms_slots
struct PartitionPruneState * ms_prune_state
TupleTableSlot * mj_MarkedTupleSlot
TupleTableSlot * mj_NullInnerTupleSlot
ExprContext * mj_InnerEContext
TupleTableSlot * mj_NullOuterTupleSlot
MergeJoinClause mj_Clauses
TupleTableSlot * mj_InnerTupleSlot
ExprContext * mj_OuterEContext
TupleTableSlot * mj_OuterTupleSlot
List * mt_mergeJoinConditions
TupleTableSlot * mt_merge_pending_not_matched
ResultRelInfo * resultRelInfo
struct PartitionTupleRouting * mt_partition_tuple_routing
List * mt_updateColnosLists
TupleTableSlot * mt_root_tuple_slot
List * mt_mergeActionLists
ResultRelInfo * rootResultRelInfo
struct TransitionCaptureState * mt_transition_capture
struct TransitionCaptureState * mt_oc_transition_capture
MergeActionState * mt_merge_action
Tuplestorestate * relation
TupleTableSlot * nl_NullInnerTupleSlot
TupleTableSlot * oc_ProjSlot
TupleTableSlot * oc_Existing
ExprState * oc_WhereClause
ProjectionInfo * oc_ProjInfo
const TupleTableSlotOps * resultops
struct SharedJitInstrumentation * worker_jit_instrument
Instrumentation * instrument
ExecProcNodeMtd ExecProcNodeReal
const TupleTableSlotOps * outerops
const TupleTableSlotOps * innerops
struct PlanState * righttree
const TupleTableSlotOps * scanops
TupleDesc ps_ResultTupleDesc
WorkerInstrumentation * worker_instrument
pg_node_attr(abstract) NodeTag type
ExprContext * ps_ExprContext
TupleTableSlot * ps_ResultTupleSlot
ProjectionInfo * ps_ProjInfo
struct PlanState * lefttree
ExecProcNodeMtd ExecProcNode
ExprContext * pi_exprContext
MemoryContext tempContext
MemoryContext tableContext
Tuplestorestate * working_table
Tuplestorestate * intermediate_table
TupleConversionMap * ri_RootToChildMap
ExprState ** ri_CheckConstraintExprs
TupleTableSlot * ri_PartitionTupleSlot
bool ri_projectNewInfoValid
OnConflictSetState * ri_onConflict
List * ri_onConflictArbiterIndexes
struct ResultRelInfo * ri_RootResultRelInfo
ExprState * ri_PartitionCheckExpr
Instrumentation * ri_TrigInstrument
TupleTableSlot ** ri_Slots
ExprState * ri_MergeJoinCondition
RelationPtr ri_IndexRelationDescs
TupleTableSlot * ri_ReturningSlot
int ri_NumSlotsInitialized
List * ri_WithCheckOptions
TupleTableSlot * ri_oldTupleSlot
bool ri_extraUpdatedCols_valid
bool ri_RootToChildMapValid
struct CopyMultiInsertBuffer * ri_CopyMultiInsertBuffer
TriggerDesc * ri_TrigDesc
TupleTableSlot * ri_AllNullSlot
ExprState ** ri_GenVirtualNotNullConstraintExprs
Bitmapset * ri_extraUpdatedCols
ExprState ** ri_GeneratedExprsI
TupleConversionMap * ri_ChildToRootMap
bool ri_ChildToRootMapValid
int ri_NumGeneratedNeededU
List * ri_MergeActions[NUM_MERGE_MATCH_KINDS]
List * ri_ancestorResultRels
TupleTableSlot * ri_newTupleSlot
List * ri_WithCheckOptionExprs
ProjectionInfo * ri_projectNew
ProjectionInfo * ri_projectReturning
ExprState ** ri_GeneratedExprsU
struct FdwRoutine * ri_FdwRoutine
ExprState ** ri_TrigWhenExprs
FmgrInfo * ri_TrigFunctions
TupleTableSlot ** ri_PlanSlots
bool ri_usesFdwDirectModify
IndexInfo ** ri_IndexRelationInfo
TupleTableSlot * ri_TrigNewSlot
int ri_NumGeneratedNeededI
TupleTableSlot * ri_TrigOldSlot
ExprState * resconstantqual
SetFunctionReturnMode returnMode
Tuplestorestate * setResult
struct TsmRoutine * tsmroutine
Relation ss_currentRelation
TupleTableSlot * ss_ScanTupleSlot
struct TableScanDescData * ss_currentScanDesc
TupleTableSlot * funcResultSlot
Tuplestorestate * funcResultStore
ExprState * elidedFuncState
TupleTableSlot * nextTupleSlot
TupleTableSlot * firstTupleSlot
TupleHashIterator hashiter
SetOpStatePerInput rightInput
MemoryContext tableContext
SetOpStatePerInput leftInput
SharedSortInfo * shared_info
ExprState * lhs_hash_expr
MemoryContext hashtablecxt
ExprContext * innerecontext
FmgrInfo * tab_hash_funcs
MemoryContext hashtempcxt
struct PlanState * planstate
ProjectionInfo * projLeft
ProjectionInfo * projRight
struct PlanState * parent
MemoryContext perTableCxt
Tuplestorestate * tupstore
const struct TableFuncRoutine * routine
ItemPointerData trss_maxtid
ItemPointerData trss_mintid
ItemPointerData * tss_TidList
ExprState * tab_hash_expr
TupleTableSlot * tableslot
ExprContext * exprcontext
TupleTableSlot * inputslot
MemoryContext partcontext
TupleTableSlot * framehead_slot
FmgrInfo startInRangeFunc
TupleTableSlot * frametail_slot
ExprState * ordEqfunction
TupleTableSlot * temp_slot_2
TupleTableSlot * agg_row_slot
struct WindowObjectData * agg_winobj
WindowStatePerFunc perfunc
MemoryContext curaggcontext
ExprState * partEqfunction
TupleTableSlot * first_part_slot
TupleTableSlot * temp_slot_1
RecursiveUnionState * rustate