On Thu, Jul 26, 2012 at 08:30:40AM -0400, Bruce Momjian wrote: > 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.
Maybe we just need to require Perl, and store the file names in the generated Perl script. I know we don't normally require Perl for operation (only development), but Perl seems to be the easiest solution here. -- 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