On Wed, Mar 13, 2024 at 1:28 AM torikoshia <torikoshia@oss.nttdata.com> wrote:
> - I saw no way to find the next node to be executed from the planstate
> tree, so the patch wraps all the ExecProcNode of the planstate tree at
> CHECK_FOR_INTERRUPTS().
I don't think it does this correctly, because some node types have
children other than the left and right node. See /* special child
plans */ in ExplainNode().
But also ... having to wrap the entire plan tree like this seems
pretty awful. I don't really like the idea of a large-scan plan
modification like this in the middle of the query. I also wonder
whether it interacts properly with JIT. But at the same time, I wonder
how you're supposed to avoid it.
Andres, did you have some clever idea for this feature that would
avoid the need to do this?
--
Robert Haas
EDB: http://www.enterprisedb.com