120 Index resultRelation,
154 double *totaldeadrows);
void(* ForeignAsyncConfigureWait_function)(AsyncRequest *areq)
int(* AcquireSampleRowsFunc)(Relation relation, int elevel, HeapTuple *rows, int targrows, double *totalrows, double *totaldeadrows)
Size(* EstimateDSMForeignScan_function)(ForeignScanState *node, ParallelContext *pcxt)
TupleTableSlot *(* IterateForeignScan_function)(ForeignScanState *node)
void(* EndForeignScan_function)(ForeignScanState *node)
TupleTableSlot **(* ExecForeignBatchInsert_function)(EState *estate, ResultRelInfo *rinfo, TupleTableSlot **slots, TupleTableSlot **planSlots, int *numSlots)
TupleTableSlot *(* IterateDirectModify_function)(ForeignScanState *node)
void(* BeginForeignModify_function)(ModifyTableState *mtstate, ResultRelInfo *rinfo, List *fdw_private, int subplan_index, int eflags)
ForeignScan *(* GetForeignPlan_function)(PlannerInfo *root, RelOptInfo *baserel, Oid foreigntableid, ForeignPath *best_path, List *tlist, List *scan_clauses, Plan *outer_plan)
FdwRoutine * GetFdwRoutineByRelId(Oid relid)
bool(* IsForeignPathAsyncCapable_function)(ForeignPath *path)
List *(* ReparameterizeForeignPathByChild_function)(PlannerInfo *root, List *fdw_private, RelOptInfo *child_rel)
void(* BeginForeignScan_function)(ForeignScanState *node, int eflags)
void(* GetForeignUpperPaths_function)(PlannerInfo *root, UpperRelationKind stage, RelOptInfo *input_rel, RelOptInfo *output_rel, void *extra)
TupleTableSlot *(* ExecForeignDelete_function)(EState *estate, ResultRelInfo *rinfo, TupleTableSlot *slot, TupleTableSlot *planSlot)
Path * GetExistingLocalJoinPath(RelOptInfo *joinrel)
void(* EndForeignModify_function)(EState *estate, ResultRelInfo *rinfo)
void(* BeginDirectModify_function)(ForeignScanState *node, int eflags)
bool(* AnalyzeForeignTable_function)(Relation relation, AcquireSampleRowsFunc *func, BlockNumber *totalpages)
bool(* PlanDirectModify_function)(PlannerInfo *root, ModifyTable *plan, Index resultRelation, int subplan_index)
void(* AddForeignUpdateTargets_function)(PlannerInfo *root, Index rtindex, RangeTblEntry *target_rte, Relation target_relation)
void(* ForeignAsyncRequest_function)(AsyncRequest *areq)
void(* RefetchForeignRow_function)(EState *estate, ExecRowMark *erm, Datum rowid, TupleTableSlot *slot, bool *updated)
void(* ExecForeignTruncate_function)(List *rels, DropBehavior behavior, bool restart_seqs)
void(* InitializeDSMForeignScan_function)(ForeignScanState *node, ParallelContext *pcxt, void *coordinate)
int(* GetForeignModifyBatchSize_function)(ResultRelInfo *rinfo)
RowMarkType(* GetForeignRowMarkType_function)(RangeTblEntry *rte, LockClauseStrength strength)
FdwRoutine * GetFdwRoutineForRelation(Relation relation, bool makecopy)
FdwRoutine * GetFdwRoutine(Oid fdwhandler)
void(* ShutdownForeignScan_function)(ForeignScanState *node)
void(* BeginForeignInsert_function)(ModifyTableState *mtstate, ResultRelInfo *rinfo)
List *(* ImportForeignSchema_function)(ImportForeignSchemaStmt *stmt, Oid serverOid)
void(* ReScanForeignScan_function)(ForeignScanState *node)
void(* ExplainForeignScan_function)(ForeignScanState *node, struct ExplainState *es)
bool(* RecheckForeignScan_function)(ForeignScanState *node, TupleTableSlot *slot)
void(* GetForeignRelSize_function)(PlannerInfo *root, RelOptInfo *baserel, Oid foreigntableid)
bool(* IsForeignScanParallelSafe_function)(PlannerInfo *root, RelOptInfo *rel, RangeTblEntry *rte)
Oid GetForeignServerIdByRelId(Oid relid)
void(* ReInitializeDSMForeignScan_function)(ForeignScanState *node, ParallelContext *pcxt, void *coordinate)
FdwRoutine * GetFdwRoutineByServerId(Oid serverid)
bool IsImportableForeignTable(const char *tablename, ImportForeignSchemaStmt *stmt)
void(* GetForeignPaths_function)(PlannerInfo *root, RelOptInfo *baserel, Oid foreigntableid)
void(* GetForeignJoinPaths_function)(PlannerInfo *root, RelOptInfo *joinrel, RelOptInfo *outerrel, RelOptInfo *innerrel, JoinType jointype, JoinPathExtraData *extra)
TupleTableSlot *(* ExecForeignInsert_function)(EState *estate, ResultRelInfo *rinfo, TupleTableSlot *slot, TupleTableSlot *planSlot)
TupleTableSlot *(* ExecForeignUpdate_function)(EState *estate, ResultRelInfo *rinfo, TupleTableSlot *slot, TupleTableSlot *planSlot)
void(* ExplainDirectModify_function)(ForeignScanState *node, struct ExplainState *es)
List *(* PlanForeignModify_function)(PlannerInfo *root, ModifyTable *plan, Index resultRelation, int subplan_index)
int(* IsForeignRelUpdatable_function)(Relation rel)
struct FdwRoutine FdwRoutine
void(* ExplainForeignModify_function)(ModifyTableState *mtstate, ResultRelInfo *rinfo, List *fdw_private, int subplan_index, struct ExplainState *es)
void(* EndDirectModify_function)(ForeignScanState *node)
void(* EndForeignInsert_function)(EState *estate, ResultRelInfo *rinfo)
void(* ForeignAsyncNotify_function)(AsyncRequest *areq)
void(* InitializeWorkerForeignScan_function)(ForeignScanState *node, shm_toc *toc, void *coordinate)
EstimateDSMForeignScan_function EstimateDSMForeignScan
EndForeignInsert_function EndForeignInsert
ReScanForeignScan_function ReScanForeignScan
BeginForeignInsert_function BeginForeignInsert
RecheckForeignScan_function RecheckForeignScan
AddForeignUpdateTargets_function AddForeignUpdateTargets
InitializeDSMForeignScan_function InitializeDSMForeignScan
BeginForeignModify_function BeginForeignModify
EndForeignModify_function EndForeignModify
BeginDirectModify_function BeginDirectModify
PlanForeignModify_function PlanForeignModify
PlanDirectModify_function PlanDirectModify
ExecForeignInsert_function ExecForeignInsert
BeginForeignScan_function BeginForeignScan
ForeignAsyncRequest_function ForeignAsyncRequest
IterateDirectModify_function IterateDirectModify
ExecForeignUpdate_function ExecForeignUpdate
RefetchForeignRow_function RefetchForeignRow
GetForeignJoinPaths_function GetForeignJoinPaths
IsForeignScanParallelSafe_function IsForeignScanParallelSafe
ExecForeignBatchInsert_function ExecForeignBatchInsert
GetForeignPaths_function GetForeignPaths
GetForeignModifyBatchSize_function GetForeignModifyBatchSize
GetForeignRelSize_function GetForeignRelSize
GetForeignRowMarkType_function GetForeignRowMarkType
ExplainForeignScan_function ExplainForeignScan
EndForeignScan_function EndForeignScan
AnalyzeForeignTable_function AnalyzeForeignTable
EndDirectModify_function EndDirectModify
ExplainForeignModify_function ExplainForeignModify
ReInitializeDSMForeignScan_function ReInitializeDSMForeignScan
IsForeignPathAsyncCapable_function IsForeignPathAsyncCapable
IterateForeignScan_function IterateForeignScan
ForeignAsyncNotify_function ForeignAsyncNotify
InitializeWorkerForeignScan_function InitializeWorkerForeignScan
ImportForeignSchema_function ImportForeignSchema
GetForeignPlan_function GetForeignPlan
ShutdownForeignScan_function ShutdownForeignScan
ExecForeignDelete_function ExecForeignDelete
ExecForeignTruncate_function ExecForeignTruncate
ExplainDirectModify_function ExplainDirectModify
IsForeignRelUpdatable_function IsForeignRelUpdatable
GetForeignUpperPaths_function GetForeignUpperPaths
ForeignAsyncConfigureWait_function ForeignAsyncConfigureWait
ReparameterizeForeignPathByChild_function ReparameterizeForeignPathByChild