Re: pg_migrator issues

From: Zdenek Kotala <Zdenek(dot)Kotala(at)Sun(dot)COM>
To: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, Robert Haas <robertmhaas(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: pg_migrator issues
Date: 2010-01-06 15:00:56
Message-ID: 4B44A5A8.30908@sun.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Dne 4.01.10 19:28, Alvaro Herrera napsal(a):
> Bruce Momjian escribió:
>
>> I considered that but realize that pg_migrator has to read
>> pg_controldata in both the old and new servers, meaning it would need
>> access to both C structures, and considering they both have the same
>> structure names, that would require some odd C tricks. Add to that you
>> don't know which version of Postgres you are migrating from/to during
>> compile and the idea of using C becomes even less attractive.
>
> However, keep in mind that this might not be the last time on which we
> will want to read something from a C struct, so perhaps it would be good
> to bite the bullet and write the odd tricks. Does it already have
> access (at compile time) to the old and new source trees?

I have some proof of concept when each control data struct version
version have one header file like pg_control_843.h and structure like
ControlFileData has name ControlFileData_843. The main pg_control.h
defines types without version like

typedef ControlFileData_843 ControlFileData;

I planed to do it for 8.5 but unfortunately no time :( commit fest is
too close.

Zdenek

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2010-01-06 15:03:28 Re: Stats for inheritance trees
Previous Message Robert Haas 2010-01-06 15:00:04 Re: [HACKERS] tribble.postgresql.org - planned maintenance downtime