Run pg_upgrade and pg_resetxlog with restricted token on Windows

Andrew Dunstan <andrew@dunslane.net>

Commit: 22b3f5b26e4eea5e598c7898a77e9368ffadbebb
Author: Andrew Dunstan <andrew@dunslane.net>
Date: 2015-03-30T21:17:54Z
Releases: 9.1.16
Run pg_upgrade and pg_resetxlog with restricted token on Windows

As with initdb these programs need to run with a restricted token, and
if they don't pg_upgrade will fail when run as a user with Adminstrator
privileges.

Backpatch to all live branches. On the development branch the code is
reorganized so that the restricted token code is now in a single
location. On the stable bramches a less invasive change is made by
simply copying the relevant code to pg_upgrade.c and pg_resetxlog.c.

Patches and bug report from Muhammad Asif Naeem, reviewed by Michael
Paquier, slightly edited by me.

Files

PathChange+/−
contrib/pg_upgrade/pg_upgrade.c modified +167 −0
src/bin/pg_resetxlog/pg_resetxlog.c modified +180 −0