On Thu, Sep 17, 2015 at 9:01 PM, Kouhei Kaigai <kai...@ak.jp.nec.com> wrote: > I entirely agree with the idea of plan-node identifier, however, > uncertain whether the node-id shall represent physical location on > the dynamic shared memory segment, because > (1) Relatively smaller number of node type needs shared state, > thus most of array items are empty. > (2) Extension that tries to modify plan-tree using planner_hook > may need to adjust node-id also. > > Even though shm_toc_lookup() has to walk on the toc entries to find > out the node-id, it happens at once on beginning of the executor at > background worker side. I don't think it makes a significant problem.
Yes, I was thinking that what would make sense is to have each parallel-aware node call shm_toc_insert() using its ID as the key. Then, we also need Instrumentation nodes. For those, I thought we could use some fixed, high-numbered key, and Tom's idea. Are there extensions that use planner_hook to do surgery on the plan tree? What do they do, exactly? -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers