Re: [patch] pg_upgrade script for 8.3->8.4 - Mailing list pgsql-hackers

From Zdenek Kotala
Subject Re: [patch] pg_upgrade script for 8.3->8.4
Date
Msg-id 49393938.5080706@sun.com
Whole thread Raw
In response to Re: [patch] pg_upgrade script for 8.3->8.4  (Greg Smith <gsmith@gregsmith.com>)
List pgsql-hackers
Greg Smith napsal(a):
> On Thu, 4 Dec 2008, Zdenek Kotala wrote:
> 
>> 1) Keep relfileid of toast file same. It is important because toast 
>> pointer contains relfileid. Currently script creates fake files with 
>> same number to protect postgresql to create new relation with this 
>> refileid. It works but by my opinion it is not much robust. I suggest 
>> to use following syntax:
>>
>> create table foo (id int) with (relfileid=16544, reltoastid=11655, 
>> reltoastidx=16543)
> 
> But once there's a more core integrated in-place upgrade, as envisioned 
> for 8.4->8,5, this syntax wouldn't been useful for anything anymore, 
> right?  

Maybe it could be useful also for user who needs to restore database with same 
filename (replication, recovery...). But I don't know about any other real 
request for this feature.

> I understand your distaste for the hack, but it seems a bit 
> extreme to start fiddling with CREATE TABLE and pg_dump* just to 
> implement a work-around for a temporary problem.  I think your magic is 
> strong enough for this, as long as the upgrade script does some sanity 
> checks and proceeds cautiously I think we can live with it.

I agree that it is temporary solution and does not make sense to create any 
special temporary hack for it. However, this syntax uses reloption mechanism 
which is easy to use and modification should be small and maybe someone could 
use for another purpose. But how you mention it is now solved by script magic.
    Zdenek



pgsql-hackers by date:

Previous
From: Peter Eisentraut
Date:
Subject: Versioned mo file installation
Next
From: Zdenek Kotala
Date:
Subject: Re: Versioned mo file installation