Re: Query regarding function cleanup in extension upgrade path

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Ayush Vatsa <ayushvatsa1810(at)gmail(dot)com>
Cc: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: Query regarding function cleanup in extension upgrade path
Date: 2024-02-14 20:56:15
Message-ID: 3113020.1707944175@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Ayush Vatsa <ayushvatsa1810(at)gmail(dot)com> writes:
> Just two follow up queries regarding this -
> 1. Suppose I created a new version 1.1 in which I reduce the C function to
> throw an error then ship it, will users get the .c latest file immediately
> and their old function will throw error but they have to use ALTER
> EXTENSION xyz UPGRADE TO 1.1 to use the latest objects defined in 1.1.sql.
> Is this the correct understanding?

Yes, if you do it like that then once they install the new shlib their
function will be broken until they do ALTER EXTENSION UPGRADE.

> 2. While going through the contrib folder I find that in the regress test
> there are two .out files with respect to a single .sql file, example
> citext.out and citext_1.out wrt citext.sql. Why is it so? Even in git blame
> , I couldn't find much!

We use that when the expected test output is environment-dependent.
If the diff between the .out files isn't pretty self-explanatory,
you can try checking the git log for the "_1.out" file to see why it
was created.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Hannes Erven 2024-02-14 22:52:03 RowLock and multiple transactions
Previous Message Greg Sabino Mullane 2024-02-14 19:40:49 Re: PITR