BUG #6085: pg_upgrade fails when unix_socket_directory != /tmp - Mailing list pgsql-bugs

From Olivier LEVESQUE
Subject BUG #6085: pg_upgrade fails when unix_socket_directory != /tmp
Date
Msg-id 201106291500.p5TF0eha057634@wwwmaster.postgresql.org
Whole thread Raw
Responses Re: BUG #6085: pg_upgrade fails when unix_socket_directory != /tmp
List pgsql-bugs
The following bug has been logged online:

Bug reference:      6085
Logged by:          Olivier LEVESQUE
Email address:      olevesque3@gmail.com
PostgreSQL version: 9.0.3
Operating system:   RHEL 5.4 Linux 2.6.18 x86_64
Description:        pg_upgrade fails when unix_socket_directory != /tmp
Details:

Running pg_upgrade on clusters with unix_socket_directory parameter
different (e.g. /pgqdata/pgserver01/data) than default value (/tmp) fails:

$ pg_upgrade -d /pgqdata/pgserver01/data -D /pgqdata/pgserver02/data -b
/opt/pgsql/na/8.4.4/bin -B /opt/pgsql/na/9.0.3/bin -p 5432 -P 5433 --check
Performing Consistency Checks
-----------------------------
Checking old data directory (/pgqdata/pgserver01/data)      ok
Checking old bin directory (/opt/pgsql/na/8.4.4/bin)        ok
Checking new data directory (/pgqdata/pgserver02/data)      ok
Checking new bin directory (/opt/pgsql/na/9.0.3/bin)        ok
Trying to start old server
.................ok

 Unable to start old postmaster with the command:
"/opt/pgsql/na/8.4.4/bin/pg_ctl" -l "/dev/null" -D
"/pgqdata/pgserver01/data" -o " -p 5432 -c autovacuum=off -c
autovacuum_freeze_max_age=2000000000" start >> "/dev/null" 2>&1
Perhaps pg_hba.conf was not set to "trust".


===> Here, the error message given is not true, because old postmaster has
been started succesfuly. It is just the connection test that failed.

A subsequent start (with old cluster running) of --check gives a better
information:

PerForming Consistency Checks on Old Live Server
------------------------------------------------
Checking old data directory (/pgqdata/pgserver01/data)      ok
Checking old bin directory (/opt/pgsql/na/8.4.4/bin)        ok
Checking new data directory (/pgqdata/pgserver02/data)      ok
Checking new bin directory (/opt/pgsql/na/9.0.3/bin)        ok
Connection to database failed: could not connect to server: No such file or
directory
        Is the server running locally and accepting
        connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

===> Why searching socket in /tmp while it is not the directory in
postgresql.conf?


Changing (commenting #unix_socket_directory in postgresql.conf) solves the
problem and pg_upgrade runs fine.

pgsql-bugs by date:

Previous
From: "Steve Haslam"
Date:
Subject: BUG #6083: psql script line numbers incorrectly count \copy data
Next
From: Magnus Hagander
Date:
Subject: Re: BUG #6082: server segfault - pg_stat_reset_shared(null)