From: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
To: Euler Taveira <euler@timbira.com.br>
To: Kyotaro Horiguchi <horikyota.ntt@gmail.com>
Cc: quanzongliang@gmail.com, pgsql-hackers <pgsql-hackers@postgresql.org>
Subject: Re: Restore replication settings when modifying a field type
Date: Fri, 3 Jan 2020 10:14:11 +0100
Message-ID: <61d38b0e-0831-d206-8390-2a08bb51905d@2ndquadrant.com> (raw)
In-Reply-To: <CAHE3wgh-JX+L_RBNQ-_SLjMNbXT4K6A5FpkLKsEmEO5mCgsUTQ@mail.gmail.com>
References: <c70fcab2-4866-0d9f-1d01-e75e189db342@gmail.com>
<20191028.133939.559712139043653003.horikyota.ntt@gmail.com>
<CAHE3wgh-JX+L_RBNQ-_SLjMNbXT4K6A5FpkLKsEmEO5mCgsUTQ@mail.gmail.com>
On 2019-11-01 04:39, Euler Taveira wrote:
> ATExecAlterColumnType records everything that depends on the column
> and for indexes it saves the definition (via pg_get_indexdef_string).
> Definition is not sufficient for reconstructing the replica identity
> information because there is not such keyword for replica identity in
> CREATE INDEX. The new index should call relation_mark_replica_identity
> to fix pg_index.indisreplident.
Yeah, I don't think we need to do the full dance of reverse compiling
the SQL command and reexecuting it, as the patch currently does. That's
only necessary for rebuilding the index itself. For re-setting the
replica identity, we can just use the internal API as you say.
Also, a few test cases would be nice for this patch.
--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
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-hackers@postgresql.org
Cc: peter.eisentraut@2ndquadrant.com, euler@timbira.com.br, horikyota.ntt@gmail.com
Subject: Re: Restore replication settings when modifying a field type
In-Reply-To: <61d38b0e-0831-d206-8390-2a08bb51905d@2ndquadrant.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