---------------------------------------------------------------- * ExecForeignScanInitializeDSM * * Initialize the parallel coordination information * ---------------------------------------------------------------- */
| 394 | * ---------------------------------------------------------------- |
| 395 | */ |
| 396 | void |
| 397 | ExecForeignScanInitializeDSM(ForeignScanState *node, ParallelContext *pcxt) |
| 398 | { |
| 399 | FdwRoutine *fdwroutine = node->fdwroutine; |
| 400 | |
| 401 | if (fdwroutine->InitializeDSMForeignScan) |
| 402 | { |
| 403 | int plan_node_id = node->ss.ps.plan->plan_node_id; |
| 404 | void *coordinate; |
| 405 | |
| 406 | coordinate = shm_toc_allocate(pcxt->toc, node->pscan_len); |
| 407 | fdwroutine->InitializeDSMForeignScan(node, pcxt, coordinate); |
| 408 | shm_toc_insert(pcxt->toc, plan_node_id, coordinate); |
| 409 | } |
| 410 | } |
| 411 | |
| 412 | /* ---------------------------------------------------------------- |
| 413 | * ExecForeignScanReInitializeDSM |
no test coverage detected