From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Amin <amin(dot)fallahi(at)gmail(dot)com> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Get access to the whole query in CustomScan path callback |
Date: | 2022-12-21 17:46:14 |
Message-ID: | 1452260.1671644774@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Amin <amin(dot)fallahi(at)gmail(dot)com> writes:
> The goal is to have access to all the tables that are being scanned or will
> be scanned as a part of the query. Basically, the callback looks like this:
> typedef void (*set_rel_pathlist_hook_type) (PlannerInfo *root,
> RelOptInfo *rel,
> Index rti,
> RangeTblEntry *rte);
> Now, the problem is when there is a nested query, the function will be
> called once for the parent query and once for the subquery. However, I need
> access to the whole query in this function. There seems to be no CustomScan
> callback before this that has the whole query passed to it. Is there any
> way I can get access to the complete query (or all the relations in the
> query) by using the parameters passed to this function? Or any other
> workaround?
Everything the planner knows is accessible via the "root" pointer.
I very strongly question the idea that a custom scan provider should
be doing what you say you want to do, but the info is there.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Ranier Vilela | 2022-12-21 17:51:38 | Re: Small miscellaneus fixes (Part II) |
Previous Message | Nikita Malakhov | 2022-12-21 17:38:12 | Re: meson and tmp_install |