On Wed, May 11, 2016 at 1:34 PM, Etsuro Fujita <fujita.ets...@lab.ntt.co.jp>
wrote:

> On 2016/05/11 16:49, Ashutosh Bapat wrote:
>
>> The patch is calculating user mapping when it's readily available
>> through RelOptInfo::fdw_private. That incurs a catalog lookup
>> unnecessarily. Instead, can we add new function makeOid, oidVal on the
>> lines of makeInteger and intVal to store and retrieve an OID resp. and
>> also corresponding print function? It might be helpful in future.
>>
>
> That might be an idea, but is the overhead in that re-calculation so large?
>
>
A call to GetForeignTable would incur a catalog lookup which means a
catalog table/index scan if corresponding entry is not in the cache. This
is followed by GetUserMapping() which is another catalog access. That's
bound to be expensive than an makeOid(), oidVal() call.

-- 
Best Wishes,
Ashutosh Bapat
EnterpriseDB Corporation
The Postgres Database Company

Reply via email to