* ExecMaterializesOutput - does a plan type materialize its output? * * Returns true if the plan node type is one that automatically materializes * its output (typically by keeping it in a tuplestore). For such plans, * a rescan without any parameter change will have zero startup cost and * very low per-tuple cost. */
| 983 | * very low per-tuple cost. |
| 984 | */ |
| 985 | bool |
| 986 | ExecMaterializesOutput(NodeTag plantype) |
| 987 | { |
| 988 | switch (plantype) |
| 989 | { |
| 990 | case T_Material: |
| 991 | case T_FunctionScan: |
| 992 | case T_TableFuncScan: |
| 993 | case T_CteScan: |
| 994 | case T_NamedTuplestoreScan: |
| 995 | case T_WorkTableScan: |
| 996 | case T_Sort: |
| 997 | case T_ShareInputScan: |
| 998 | return true; |
| 999 | |
| 1000 | default: |
| 1001 | break; |
| 1002 | } |
| 1003 | |
| 1004 | return false; |
| 1005 | } |
no outgoing calls
no test coverage detected