---------------------------------------------------------------- * ExecReScanSubqueryScan * * Rescans the relation. * ---------------------------------------------------------------- */
| 194 | * ---------------------------------------------------------------- |
| 195 | */ |
| 196 | void |
| 197 | ExecReScanSubqueryScan(SubqueryScanState *node) |
| 198 | { |
| 199 | ExecScanReScan(&node->ss); |
| 200 | |
| 201 | /* |
| 202 | * ExecReScan doesn't know about my subplan, so I have to do |
| 203 | * changed-parameter signaling myself. This is just as well, because the |
| 204 | * subplan has its own memory context in which its chgParam state lives. |
| 205 | */ |
| 206 | if (node->ss.ps.chgParam != NULL) |
| 207 | UpdateChangedParamSet(node->subplan, node->ss.ps.chgParam); |
| 208 | |
| 209 | /* |
| 210 | * if chgParam of subnode is not null then plan will be re-scanned by |
| 211 | * first ExecProcNode. |
| 212 | */ |
| 213 | if (node->subplan->chgParam == NULL) |
| 214 | ExecReScan(node->subplan); |
| 215 | } |
| 216 | |
| 217 | void |
| 218 | ExecSquelchSubqueryScan(SubqueryScanState *node, bool force) |
no test coverage detected