From: | Russell Keane <Russell(dot)Keane(at)inps(dot)co(dot)uk> |
---|---|
To: | Bruce Momjian <bruce(at)momjian(dot)us> |
Cc: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Upgrading 9.0 to 9.3 - permission denied to pg_upgrade_utility.log |
Date: | 2014-08-15 16:11:38 |
Message-ID: | 8D0E5D045E36124A8F1DDDB463D548557D3C2F2636@mxsvr1.is.inps.co.uk |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
-----Original Message-----
From: Bruce Momjian [mailto:bruce(at)momjian(dot)us]
Sent: 15 August 2014 17:06
To: Russell Keane
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: [GENERAL] Upgrading 9.0 to 9.3 - permission denied to pg_upgrade_utility.log
On Tue, Aug 12, 2014 at 10:59:16AM +0100, Russell Keane wrote:
> > The upgrade works all the way up until the final hurdle where, in
> > the pg_upgrade_utility.log the following statement appears:
> >
> > command: ""C:\Program Files (x86)\PostgreSQL\9.3\bin/initdb"
> > --sync-only "D:\ PostgreSQL\9.3\Data" >> "pg_upgrade_utility.log" 2>&1"
> >
> > syncing data to disk ... initdb: could not open file
> > "D:/PostgreSQL/9.3/Data/
> > pg_upgrade_utility.log": Permission denied
>
> Uh, it would appear you are running pg_upgrade from _inside_ the 9.3 data directory. That should work, but it would probably be better to run it in another directory where you also have write permission. I think the problem is that initdb --sync-only is syncing those files to disk as you are writing to the log file.
>
> We have had Windows problems of two processes writing to the same file, but that is usually a different error message, e.g.
>
> * For some reason, Windows issues a file-in-use error if we write data to
> * the log file from a non-primary thread just before we create a
> * subprocess that also writes to the same log file. One fix is to sleep
> * for 100ms. A cleaner fix is to write to the log file _after_ the
> * subprocess has completed, so we do this only when writing from a
> * non-primary thread. fflush(), running system() twice, and pre-creating
> * the file do not see to help.
>
> I think that returns a "share violation" error.
I have applied the attached patch for 9.5 which will generate a clearer error in this case, attached.
--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ Everyone has their own god. +
Thank you once again.
Regards,
Russell.
From | Date | Subject | |
---|---|---|---|
Next Message | Terry Schmitt | 2014-08-15 17:00:51 | Re: Next steps in debugging database storage problems? |
Previous Message | Bruce Momjian | 2014-08-15 16:05:39 | Re: Upgrading 9.0 to 9.3 - permission denied to pg_upgrade_utility.log |