Re: [GENERAL] pg_upgrade not detecting version properly

Bruce Momjian <bruce@momjian.us>

From: Bruce Momjian <bruce@momjian.us>
To: Chris Ernst <cernst@zvelo.com>
Cc: PostgreSQL-development <pgsql-hackers@postgreSQL.org>
Date: 2012-10-10T21:06:45Z
Lists: pgsql-hackers, pgsql-general

Attachments

On Wed, Oct 10, 2012 at 01:54:49PM -0400, Bruce Momjian wrote:
> On Wed, Oct 10, 2012 at 10:35:06AM -0600, Chris Ernst wrote:
> > On 10/10/2012 09:56 AM, Bruce Momjian wrote:
> > > Can you show me what is in the PG_VERSION file in the old cluster?  It
> > > should be "9.1".
> > 
> > Hi Bruce,
> > 
> > Thank you for the reply.  Indeed it is "9.1":
> > 
> > # cat /postgresql/9.1/main/PG_VERSION
> > 9.1
> > 
> > And just for good measure:
> > 
> > cat /postgresql/9.2/main/PG_VERSION
> > 9.2
> > 
> > And there are no other PostgreSQL versions on this machine.
> > 
> > Hmm... I was just about to send this when something else occurred to me.
> >  I had initially tried to run pg_upgrade as root and it said it couldn't
> > be run as root.  So I've been running it as my own user (which is in the
> > postgres group).  However, everything in /postgresql/9.1/main is owned
> > by postgres with 700 permissions.
> > 
> > I switched to the postgres user and now pg_upgrade is running.  Perhaps
> > just a more informative error message is in order.
> > 
> > Thank you for the shove in the right direction =)
> 
> Oops, that code was returning zero if it couldn't open the file.  The
> attached, applied patch to head and 9.2 issues a proper error message.
> 
> Seems this "zero return" has been in the code since the beginning.  :-(

CC to hackers.

Above is the email that caused me to fixed pg_upgrade's handling when it
can't read the data directory;  patch attached.

-- 
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + It's impossible for everything to be true. +