mirror of
https://git.postgresql.org/git/postgresql.git
synced 2026-02-11 08:17:37 +08:00
"Result Cache" was never a great name for this node, but nobody managed to come up with another name that anyone liked enough. That was until David Johnston mentioned "Node Memoization", which Tom Lane revised to just "Memoize". People seem to like "Memoize", so let's do the rename. Reviewed-by: Justin Pryzby Discussion: https://postgr.es/m/20210708165145.GG1176@momjian.us Backpatch-through: 14, where Result Cache was introduced
33 lines
1.1 KiB
C
33 lines
1.1 KiB
C
/*-------------------------------------------------------------------------
|
|
*
|
|
* nodeMemoize.h
|
|
*
|
|
*
|
|
*
|
|
* Portions Copyright (c) 2021, 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 */
|