2
0

nodeHashjoin.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. /*-------------------------------------------------------------------------
  2. *
  3. * nodeHashjoin.h
  4. * prototypes for nodeHashjoin.c
  5. *
  6. *
  7. * Portions Copyright (c) 1996-2022, PostgreSQL Global Development Group
  8. * Portions Copyright (c) 1994, Regents of the University of California
  9. *
  10. * src/include/executor/nodeHashjoin.h
  11. *
  12. *-------------------------------------------------------------------------
  13. */
  14. #ifndef NODEHASHJOIN_H
  15. #define NODEHASHJOIN_H
  16. #include "access/parallel.h"
  17. #include "nodes/execnodes.h"
  18. #include "storage/buffile.h"
  19. extern HashJoinState *ExecInitHashJoin(HashJoin *node, EState *estate, int eflags);
  20. extern void ExecEndHashJoin(HashJoinState *node);
  21. extern void ExecReScanHashJoin(HashJoinState *node);
  22. extern void ExecShutdownHashJoin(HashJoinState *node);
  23. extern void ExecHashJoinEstimate(HashJoinState *state, ParallelContext *pcxt);
  24. extern void ExecHashJoinInitializeDSM(HashJoinState *state, ParallelContext *pcxt);
  25. extern void ExecHashJoinReInitializeDSM(HashJoinState *state, ParallelContext *pcxt);
  26. extern void ExecHashJoinInitializeWorker(HashJoinState *state,
  27. ParallelWorkerContext *pwcxt);
  28. extern void ExecHashJoinSaveTuple(MinimalTuple tuple, uint32 hashvalue,
  29. BufFile **fileptr);
  30. #endif /* NODEHASHJOIN_H */