Re: SSI patch renumbered existing 2PC resource managers??

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>
Cc: Kevin Grittner <Kevin.Grittner@wicourts.gov>, drkp@csail.mit.edu, pgsql-hackers@postgreSQL.org
Date: 2011-06-13T19:33:24Z
Lists: pgsql-hackers
Heikki Linnakangas <heikki.linnakangas@enterprisedb.com> writes:
> On 13.06.2011 21:31, Tom Lane wrote:
>> So far as I can tell, that breaks pg_upgrade (if there are any open
>> prepared transactions) for no redeeming social benefit.

> Surely pg_upgrade can't work anyway if there's any open prepared 
> transactions in the database. We're not going to guarantee to keep all 
> the data structures we write in two-phase state files unchanged over 
> major releases. If pg_upgrade is not checking for prepared transcations 
> at the moment, such a check should probably should be added.

No, pg_upgrade should not be unilaterally refusing that.  The correct
way to deal with this consideration is to change the TWOPHASE_MAGIC
number when we make a change in on-disk 2PC state.  Which wasn't done
in the SSI patch.  We can either change that now, or undo the
unnecessary change in existing RM IDs.  I vote for the latter.

			regards, tom lane