Re: "pg_upgrade" cannot write to log file pg_upgrade_internal.log

From: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
To: "Yang, Leo" <leo(dot)yang(at)hp(dot)com>
Cc: "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: "pg_upgrade" cannot write to log file pg_upgrade_internal.log
Date: 2015-12-16 06:28:18
Message-ID: CAB7nPqR8jR9_bczPaRLOjnq-wcwxuAZ2moXFoVedauqZfSHCvQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Dec 15, 2015 at 6:54 PM, Yang, Leo <leo(dot)yang(at)hp(dot)com> wrote:
> I run “pg_upgrade -xx” fromPostgreSQL8.3 to PostgreSQL9.4.5 on window server
> 2008. It will show some wrong information:
>
> cannot write to log file pg_upgrade_internal.log
>
> Failure, exiting.
> It seems that the upgrade can be successful on window 7. It seems to be a
> permissions problem. I get some information about restricting privileges
> from source code, and I find the changes “Run pg_upgrade and pg_resetxlog
> with restricted privileges on Windows, so that they don't fail when run by
> an administrator (refer to
> http://www.postgresql.org/docs/9.4/static/release-9-4-2.html )” for release
> 9.4.2. Why did you do this?

The original commit regarding the use of restricted permissions is that:
commit: 2366761bf9eb8e9aa3820b9f3491bcfc48b8188f
author: Andrew Dunstan <andrew(at)dunslane(dot)net>
date: Mon, 30 Mar 2015 17:16:57 -0400
Run pg_upgrade and pg_resetxlog with restricted token on Windows

And that's a problem that has been discussed here to correct the fact
that pg_upgrade cannot run with a user that has administrator rights
on Windows:
http://www.postgresql.org/message-id/CAEB4t-NpXGiP5Bqvv3P+d+x=V4BqE+Awg+G7ennBn8icPXep_g@mail.gmail.com

Note that pg_upgrade_internal.log gets opened *before* the restricted
token is taken for the process running pg_upgrade when the options are
parsed, so it seems hard to believe that your problem and this fix are
related.

> How can I solve this problem? I hope you can help me.

I think that you should first check if the user under which you are
running the upgrade has sufficient permissions to write those log
files. As far as I can see, there is nothing to blame from the code.
--
Michael

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2015-12-16 06:29:52 Re: "pg_upgrade" cannot write to log file pg_upgrade_internal.log
Previous Message Jeff Janes 2015-12-16 06:15:04 Re: Disabling an index temporarily