On Mon, Jul 23, 2012 at 11:11:27PM +0300, Peter Eisentraut wrote:
> On mån, 2012-07-23 at 10:08 -0400, Robert Haas wrote:
> > Relying on the number of hard links seems very fragile.  For example,
> > it'll break if you are using copy mode.  And it won't work on Windows,
> > either.
> 
> pg_upgrade could remember the list of files that the user would need to
> copy to the remote server (i.e., the list of files pg_upgrade itself
> copied or linked) and write that to a file.

Good idea.  A list of file names seems best, but wouldn't that list
exceed the maximum size of an argument list?  How could we pass that
list to a command like scp?   And how could we pass that list on
Windows?

Pg_upgrade already creates a script to analyze the cluster, so we could
create another script to upgrade a standby.  However, the problem with a
script is that I have no idea what command people would use to do the
copy.  I think I could create a list and pass that into a loop so only
the command has to be modified, but again, how do we do that on Windows?
Can we create a shell function in Windows and pass the file name as an
argument?

Another problem is that the standby cluster might create _new_ files
that don't exist on the master, e.g. WAL files, and those have to be
removed.  I am not clear how to do that either, except by removing all
files with a hard link count of 1, and again, this is difficult on
Windows.

-- 
  Bruce Momjian  <br...@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + It's impossible for everything to be true. +

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to