| From: | Bruce Momjian <bruce(at)momjian(dot)us> |
|---|---|
| To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
| Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: Win32 link() function |
| Date: | 2009-06-01 03:57:08 |
| Message-ID: | 200906010357.n513v8321575@momjian.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Tom Lane wrote:
> Bruce Momjian <bruce(at)momjian(dot)us> writes:
> >> Tom Lane wrote:
> >>> Hmm, interesting. Are we requiring our DBs to be on NTFS already?
>
> > Oh, yea, we only support tablespaces on Win32 using NTFS.
>
> Well, the important point there is that we fail gracefully if you try to
> use tablespaces when not on NTFS. So you're going to have to make sure
> that pg_migrator's --link option fails gracefully when not on NTFS.
I will just check the return code and exit on error.
> (Come to think of it, --link can fail on Unix too, if the user tries to
> put the new database on a different filesystem. Have you got guards in
> there to make sure this is discovered before the point of no return?)
Of course:
if ((msg = linkAndUpdateFile(ctx, pageConverter, oldfile, newfile)) != NULL)
pg_log(ctx, PG_FATAL,
"error while creating link from %s.%s(%s) to %s.%s(%s): %s\n",
oldnspname, oldrelname, oldfile, newnspname, newrelname,
newfile, msg);
...
if (pg_link_file(src, dst) == -1)
return strerror(errno);
though you have to delete the new cluster directory and remove the _old
suffixes to get your old cluster back. I don't check before starting
the migration.
--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2009-06-01 04:02:47 | Re: Win32 link() function |
| Previous Message | Tom Lane | 2009-06-01 03:53:36 | Re: Win32 link() function |