summaryrefslogtreecommitdiffstats
path: root/src/include/executor/nodeMemoize.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/executor/nodeMemoize.h')
-rw-r--r--src/include/executor/nodeMemoize.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/include/executor/nodeMemoize.h b/src/include/executor/nodeMemoize.h
new file mode 100644
index 0000000..4643163
--- /dev/null
+++ b/src/include/executor/nodeMemoize.h
@@ -0,0 +1,32 @@
+/*-------------------------------------------------------------------------
+ *
+ * nodeMemoize.h
+ *
+ *
+ *
+ * Portions Copyright (c) 2021-2022, PostgreSQL Global Development Group
+ * Portions Copyright (c) 1994, Regents of the University of California
+ *
+ * src/include/executor/nodeMemoize.h
+ *
+ *-------------------------------------------------------------------------
+ */
+#ifndef NODEMEMOIZE_H
+#define NODEMEMOIZE_H
+
+#include "access/parallel.h"
+#include "nodes/execnodes.h"
+
+extern MemoizeState *ExecInitMemoize(Memoize *node, EState *estate, int eflags);
+extern void ExecEndMemoize(MemoizeState *node);
+extern void ExecReScanMemoize(MemoizeState *node);
+extern double ExecEstimateCacheEntryOverheadBytes(double ntuples);
+extern void ExecMemoizeEstimate(MemoizeState *node,
+ ParallelContext *pcxt);
+extern void ExecMemoizeInitializeDSM(MemoizeState *node,
+ ParallelContext *pcxt);
+extern void ExecMemoizeInitializeWorker(MemoizeState *node,
+ ParallelWorkerContext *pwcxt);
+extern void ExecMemoizeRetrieveInstrumentation(MemoizeState *node);
+
+#endif /* NODEMEMOIZE_H */