On 3/5/25 22:54, Edwin UY wrote:
Hi,
Does anyone know of a script that can be used to compare parameters
pre- and post- upgrade?
Is it something that's worth the effort though? Or is it not something
to be worrying about?
We only need to check pg_settings for this, is that correct?
Basically those the difference can be divided in the following categories :
a) parameters that are not supported any more in the new version
b) parameters that are introduced in the new version
c) parameters that have changed their name across the two versions and
maybe the unit as well
So you have to isolate all non defaults from the old cluster and then
read the docs and plan about all actions related to the GUC params in
a), b) and c) . Usually grep, ripgrep, awk, sort, uniq, and all the
unix goodies along pg_settings are your friends to find differences.
Across more "distant" upgrades (I did pgsql10 -> pgsql16 recently) it
becomes more painful. Across more close upgrades it is easier. If you
dont know what to do with a new param, or dont have time to research, or
benchmark, leave it to the default, and note this down to take into
consideration in the next performance test. Some of them especially the
new ones (e.g. JIT) sometimes might give tricky results so you may chose
to be a little conservative and progress as you read and test things.