Re: Issue in pg_catalog.pg_indexes view definition

From: Dilip Kumar <dilipbalaut(at)gmail(dot)com>
To: Amit Langote <Langote_Amit_f8(at)lab(dot)ntt(dot)co(dot)jp>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Issue in pg_catalog.pg_indexes view definition
Date: 2016-07-14 08:21:14
Message-ID: CAFiTN-t5amfEtmz0RBtTVVtD9whd=-g_RYOHaXSAp-oVVvjUAA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Jul 14, 2016 at 1:37 PM, Amit Langote <Langote_Amit_f8(at)lab(dot)ntt(dot)co(dot)jp
> wrote:

> Can we say that pg_get_indexdef() has "side-effects" because it can error
> like this? Shouldn't such a function be marked *volatile*? Because if I
> do so by updating pg_proc, the plan changes (perhaps) to a safe one in
> this context:
>

That is another option, but by nature this function is not actually
volatile, because if clause is on *pg_index* indexrelid then it can be
pushed down.

So I think changing the view definition and calling this function on
indexrelid will remove the error. So I think
correct fix is to change view definition, as I proposed in above patch.

Any other opinion on this ?

--
Regards,
Dilip Kumar
EnterpriseDB: http://www.enterprisedb.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Dilip Kumar 2016-07-14 08:29:37 Re: Issue in pg_catalog.pg_indexes view definition
Previous Message Fabien COELHO 2016-07-14 08:21:07 Re: unexpected psql "feature"