2
0

nodeMemoize.h 1.1 KB

1234567891011121314151617181920212223242526272829303132
  1. /*-------------------------------------------------------------------------
  2. *
  3. * nodeMemoize.h
  4. *
  5. *
  6. *
  7. * Portions Copyright (c) 2021-2022, PostgreSQL Global Development Group
  8. * Portions Copyright (c) 1994, Regents of the University of California
  9. *
  10. * src/include/executor/nodeMemoize.h
  11. *
  12. *-------------------------------------------------------------------------
  13. */
  14. #ifndef NODEMEMOIZE_H
  15. #define NODEMEMOIZE_H
  16. #include "access/parallel.h"
  17. #include "nodes/execnodes.h"
  18. extern MemoizeState *ExecInitMemoize(Memoize *node, EState *estate, int eflags);
  19. extern void ExecEndMemoize(MemoizeState *node);
  20. extern void ExecReScanMemoize(MemoizeState *node);
  21. extern double ExecEstimateCacheEntryOverheadBytes(double ntuples);
  22. extern void ExecMemoizeEstimate(MemoizeState *node,
  23. ParallelContext *pcxt);
  24. extern void ExecMemoizeInitializeDSM(MemoizeState *node,
  25. ParallelContext *pcxt);
  26. extern void ExecMemoizeInitializeWorker(MemoizeState *node,
  27. ParallelWorkerContext *pwcxt);
  28. extern void ExecMemoizeRetrieveInstrumentation(MemoizeState *node);
  29. #endif /* NODEMEMOIZE_H */