Re: Corruption with IMMUTABLE functions in index expression.

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>, Prabhat Sahu <prabhat(dot)sahu(at)enterprisedb(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Corruption with IMMUTABLE functions in index expression.
Date: 2021-10-11 18:59:22
Message-ID: 477319.1633978762@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Andres Freund <andres(at)anarazel(dot)de> writes:
> Perhaps we could set pg_index.indisvalid to false initially, and if opening an
> index where pg_index.indisvalid error out with a different error message if
> TransactionIdIsCurrentTransactionId(xmin). And then use an inplace update to
> set indisvalid to true, to avoid the bloat?

I still can't get excited about it ... but yeah, update-in-place would
be enough to remove the bloat objection. I doubt we need any code
changes beyond changing the indisvalid state.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bharath Rupireddy 2021-10-11 19:07:47 Accommodate startup process in a separate ProcState array slot instead of in MaxBackends slots.
Previous Message Peter Geoghegan 2021-10-11 18:53:38 Re: BUG #17212: pg_amcheck fails on checking temporary relations