From: | Amit Langote <Langote_Amit_f8(at)lab(dot)ntt(dot)co(dot)jp> |
---|---|
To: | Ildar Musin <i(dot)musin(at)postgrespro(dot)ru>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Declarative partitioning |
Date: | 2016-05-17 07:56:34 |
Message-ID: | 573ACEB2.1090705@lab.ntt.co.jp |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi Ildar,
On 2016/05/16 22:12, Ildar Musin wrote:
> Hi Amit,
>
> I'm running some experiments based on your infrastructure trying to
> optimize SELECT queries. At some point I need to get PartitionDesc for
> relation and to do it I'm using RelationGetPartitionDesc() function.
> Problem is that this function copies relcache data and it can be quite
> slow for large amounts (thousands) of partitions. The comment to the
> function says that we cannot use relation->rd_partdesc pointer to relcache
> because of possibility of relcache invalidation. Could you please tell is
> it possible that relcache invalidation occurs during SELECT/UPDATE/DELETE
> query?
Hmm, I think invalidation would not occur mid-query since it would have
acquired a lock on the table. So the copying may be unnecessary though I
may be wrong. I will study other similar code and see if that is so.
Thanks,
Amit
From | Date | Subject | |
---|---|---|---|
Next Message | Daniel Gustafsson | 2016-05-17 09:18:17 | Bug in intarray bench script |
Previous Message | Rajkumar Raghuwanshi | 2016-05-17 06:54:37 | Re: Postgres_fdw join pushdown - getting server crash in left outer join of three table |