pg.ddx.io  pgsql-admin@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: ZongtianHou <zongtianhou@icloud.com>
To: pgsql-admin <pgsql-admin@postgresql.org>
Subject: how to conveniently upgrade with specific catalog change
Date: Thu, 9 Jul 2020 17:55:03 +0800
Message-ID: <0CC0149C-CD15-4A81-B4F1-5AF8E67E57FD@icloud.com> (raw)
In-Reply-To: <1647744.1592576042@sss.pgh.pa.us>
References: <99E3D554-1D96-42F0-9647-B7D2CECB3E7E@icloud.com>
	<1647744.1592576042@sss.pgh.pa.us>

Hi, all
I am doing some development based on postgres(8.x.x) and encountered a problem when doing upgrade. Normally, there are two ways for me to do upgrade.
	1. when new version without catalog change, I can replace the binary and restart the cluster.
	2. when new version with catalog change like add a column or a row to a system table, I can replace the binary and turn allow_system_table_mods to all, do all the changes, then restart.

But, when new version add a new built-in datatype, like json, which will insert a row in pg_type with specific oid, I can not find a simple way to do this. I look up the initdb code, it run the postgres program in bootstrap mode, feed it data from postgres.bki file which support oid specification. Simplify the question, How can I do upgrade conveniently if I just need to insert one row in one system table with specific oid? Can I do it in upgrade mode somehow or I need to run some upgrade program?

Best Regards,
Zongtian Hou




view thread (7+ messages)  latest in thread

Message-ID: <0CC0149C-CD15-4A81-B4F1-5AF8E67E57FD@icloud.com>
Permalink:  ../0CC0149C-CD15-4A81-B4F1-5AF8E67E57FD@icloud.com/
Also on:    postgresql.org/message-id/0CC0149C-CD15-4A81-B4F1-5AF8E67E57FD@icloud.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-admin@postgresql.org
  Cc: zongtianhou@icloud.com
  Subject: Re: how to conveniently upgrade with specific catalog change
  In-Reply-To: <0CC0149C-CD15-4A81-B4F1-5AF8E67E57FD@icloud.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox